2009-06-18 3 views
1

Хорошо, так что вот разбивка моей ситуации.Переход от VB.net к java

  • Я только что закончил свой первый год «компьютерные науки» в Highschool, изучая сказочный язык, Vb.net (получить смех прямо сейчас)
  • Я иду в компьютерную науку AP в следующем году. Мы будем работать с Java.
  • У меня есть тонны свободного времени этим летом, и я хотел бы улучшить свои навыки программирования и стать более эффективным программистом.
  • Я буду использовать BlueJ IDE для Java

Как вы думаете, я мог бы научиться программировать на Java до сентября? Какие упражнения вы бы рекомендовали начинающему программисту избавиться от вредных привычек, которые я мог или не мог получить при программировании на vb.net? Насколько трудным является переход VB.net на Java? Было бы легко работать с разными IDE или я должен просто придерживаться одной IDE?

ответ

3

The Java Tutorials было бы хорошим местом для начала изучения Java.

Если идея состоит в том, чтобы начать новую работу и попытаться избавиться от «вредных привычек» (конечно, использование Visual Basic .NET не обязательно означает, что вы, возможно, подобрали плохие привычки) Трудно взглянуть на учебник с самого начала.

Что касается ситуации с одним или несколькими IDE, в начале я бы сказал, начиная с одного и получая несколько удобных, не повредит.

На самом деле, может быть, не такая уж плохая идея пропустить IDE в начале и использовать текстовый редактор и командную строку для компиляции и запуска программ.

Почему? Я заметил, что многие люди, которые полагаются только на IDE, не знают основ для компиляции и запуска программ, и, как результат, имеют меньше понимания того, как на самом деле получить работу на базовом уровне, поскольку среда IDE заботится об этом для них.

Я сам не использовал VB .NET, но я бы предположил, что если вы запрограммировали объектно-ориентированный подход, переход от VB .NET к Java, вероятно, не будет большим скачком. Однако, если объектно-ориентированное программирование кажется трудным, то начать с IDE, например BlueJ (который я использовал только пару раз, несколько лет назад) в начале, может быть проще.

+0

Спасибо за ссылку, но я действительно искал некоторую помощь перехода. Но эта ссылка наверняка поможет, когда я сяду и начну учиться. – user78071

+0

Java на самом деле является языком, который заставляет больно использовать текстовый редактор для написания программ, однако, столько вещей, которые указаны _in_, файл должен быть указан за пределами снова (имя класса, namesp^Wpackages), поэтому простое изменение делает перемещение и переименование файлов. Не очень весело, хотя большинство моих программ в текстовом редакторе, а не в среде IDE. Но не для Java. – Joey

+0

Это действительная точка в IDE. Я не знаю, сколько раз мои более низкие знания о том, как все это работает, пригодились при отладке странных случаев края (особенно с странными банками). Я не парень Java, но меня зовут, чтобы время от времени устранять эти вещи. Это может показаться мелочью, но это дополнительное знание является огромным преимуществом на практике. –

1

Изучение Java до сентября полностью выполнимо, но есть много начального обучения, особенно с IDE, которые могут создавать проблемы мотивации. Java намного строже, чем VB, поэтому переход может показаться довольно странным.

Лично, только исходя из моих интересов, я начал бы постепенный подход, начиная с обработки (http://processing.org/). Обработка - это Java, но предназначена для создания цифрового искусства. Он также откладывает потребность в большом количестве материалов шаблонов, пока вам не понадобится. Я обнаружил, что кривая обучения довольно нежная и навыки хорошо переводится. Кроме того, кодирование симпатичных изображений или простых реализаций понга намного веселее (по крайней мере для меня), чем написание «Hello World».

Я перешел с QBASIC на C++, а затем на Java и другие языки. Это действительно не так уж плохо.

Good Luck

1

Ну, синтаксис мудрый VB.NET и Java не очень похожи друг на друга, но в моем опыте синтаксис является наименьшим из проблем в изучении нового языка.

Вы, безусловно, должны столкнуться с стандартной библиотекой классов Java, которая немного отличается от .NET, хотя она содержит практически практически то же самое.

Более того, у Java очень мало синтаксического сахара, чтобы облегчить вам задачу. Написание больших программ почти всегда требует шаблонов проектирования, а Java - это язык, который довольно тяжелый для них. Изучение их и знание того, когда их использовать (или, по крайней мере, определить их в библиотеке классов), могут занять некоторое время, если у вас уже нет знаний в этой области.

Например, если в VB.NET есть события для распространения сообщений между объектами, такая концепция не существует непосредственно в мире Java. Для этого есть шаблон наблюдателя. В зависимости от того, как вы смотрите на это, .NET-события - это просто синтаксический сахар для шаблона наблюдателя, идущий ниже капота, без ведома начального программиста, или .NET просто не нужно приближать решение с классами и интерфейсами, где правильный уже установлен.

На самом деле, моя самая большая проблема с Java - это многословие и тот факт, что почти все должно быть классом.

Но для обучения я предлагаю вам попробовать просто дайвинг прямо. Там есть много учебников, которые помогут вам начать работу (Sun имеет many good ones, охватывающий ключевые аспекты платформы Java). Вы можете повторить проект, который вы уже сделали в VB, или придумать задачу, которую хотите решить самостоятельно (хотя я не очень хорошо разбираюсь в таких вещах, ymmv :-)).

Но самый простой способ изучить язык - это фактически программа в нем. Вы, конечно, не будете экспертом до сентября, но решение некоторых проблем должно быть полностью выполнимым. Кроме того, я сомневаюсь, что они ожидают, что вы уже освоили этот язык к тому времени.

Что касается IDE, мы часто используем Eclipse здесь и просто пасли BlueJ во время одной лекции. Я бы сказал, что вы должны использовать то, что лучше всего подходит для вас, хотя я помню BlueJ не столько как IDE, сколько интерактивную игровую площадку Java или так. Возможно, я ошибаюсь, хотя я регулярно не обращал внимания на лекции того времени :-).

Смежные вопросы