Форум программистов » Программирование
Получение минимального опыта программирования на Java, самостоятельно
(51 posts)-
Как я понимаю программирование можно разделить на две составляющие: работа с языком и работа с(в) проектом(е). До сего времени я занимался первой составляющей. Как результат чего-то такого, что я мог-бы назвать опытом (отвечая на соответствующий вопрос), у меня нет.
Теперь хочу сделать маленький, но комплексный, проект, который охватит ключевые вопросы жизни проекта (тестирование, контроль версий, подскажите что еще?).Подскажите как начать, возможно какое-то руководство знаете на эту тему.
Также интересует тема, которую считаю рационально выбрать исходя из того, что работодатель хочет видеть от джуниора. Подскажите что он хочет видеть?
Подскажите нужно-ли уже выбрать направление в Java, или можно пока быть без него?Спасибо.
ЗЫ: Курсы я рассматриваю тоже, но хочу использовать время пока что-то найду.
-
"...Подскажите как начать, возможно какое-то руководство знаете на эту тему...." заранее извиняюсь, если это для Вас не новость. Но на сайтах
http://www.proklondike.com/
http://samouchka.net/
есть много литературы по Java (и не только по Java), как для начинающих, так и для продвинутых пользователей. -
Человек кажется спрашивает про приобритение первого опыта.
Я бы посоветовал придумать себе как-то проект, какой бы интересно было делать.
Если с этим туго - то можно напроситься к кому-то в существующий проект в стажеры. -
Спасибо за сайты, в ближайшее время посмотрю, изучу.
Проект придумать легко, собственно есть в голове пару идей, но для их реализации необходимо вникнуть в очень узкую тему. На данный момент цель - проект, который я смогу назвать опытом (какой-то стандарт, который будет выполнен). Проект, наверное, должен базироваться на работе с файлами? (это по части работы с языком), и включать в себя "ключевые вопросы жизни проекта".
Так вот, если по порядку:
1. Что должен включать проект или работу с чем приятно будет увидеть потенциальному работодателю (большая аутсорсинговая компания, работа с Java EE)?
2. Какие вопросы должны быть рассмотрены по части поддержки проекта "(тестирование, контроль версий,"?Напроситься? К кому? В коммерческий проект = получить работу джуниора - собс-но цель. Других вариантов, имхо, или нет или хорошо спрятаны.
Отдельно. Если я ошибаюсь в том, что необходимо для получения работы для джуниора (знание языка, некий опыт (проект), английский, ..) - поправьте.
-
Проект должен быть полезен тебе - тогда ты будеш его развивать. Ну и будет как пример кода для работодателя.
-
а ви імітуйте роботу справжнього проекта: поставте собі задачу, запишіть її як технічний дизайн. Виріште, що будете робити в першу чергу, все інше відкладіть для наступної версії. Складіть графік, наприклад на тиждень, день-у-день які фічі будете робити. Встановіть систему контроля версій. Також, багтрекінгову систему (bugzilla шарова). Почніть програмувати. В кінці кожного дня шліть самому собі репорти про виконану роботу. Також чекінте код в CVS. Встановіть межу, коли ви готові випустити альфа версію. Ось її віддайте комусь із знайомих, хай помацає і баги вам накатає. А ви їх фіксати будете. Також, війдіть в роль, наче програмістів двоє :) наприклад два різних акаунти в цвс та багзілі. Щоб ви знали, які перешкоди часто можуть робити люди в команді (наприклад, не відпустити код).
В проекті 100% має бути ХМЛ та база даних. Без цього, я думаю, нікуди не дітись
-
В точку.
Только можно по порядку. Писать буду в NetBeans (тут же тестирование, ANТ). Дополнительно качаю и разбираюсь с CVS и Bugzilla.
Design document. Что тут написать?
"репорти про виконану роботу". А можно пример?
БД. Что использовать: MySQL (которая есть) или Derby (которую нужно скачать и разобраться)?
XML - да. -
Начал смотреть про CVS и появился вопрос: мне нужно CVS или Subversion
-
дизайн документ: перелік основних фіч, спочатку поверхово, а потім вже розгорнуто по кожній із них, звідки дані приходять, куди ідуть. Можливі шляхи проходу і т.д. Приблизно в пейнті накидайте інтерфейс. Взагалі, погугліть "Templates for technical design" мають бути багато темплейтів для цього.
Приклад репорту:
Daily report for Noname Project on August 22:
1. Fixed bugs: 111, 112, 113.
2. Implementing GUI - 80% completed.
3. Updating technical design - 100% completed.Щось на кшталт такого.
БД беріть будь-яку, все одно не вгадаєте потрібну :D. А так із популярних - MSSQL or Oracle
-
Начал смотреть про CVS и появился вопрос: мне нужно CVS или Subversion
Тебе нужен Mercurial.
-
:) А можно поподробней, почему?
-
Чтоб не привыкать ко всякому отстою. Плюс, им намного удобнее пользоваться, даже когда разрабатываешь в одиночку и только на одном компе.
-
С контролем версий как-то стало более-менее понятно (по крайней мере на уровне знакомства).
А вот с bugzilla ... Она использует perl ... Есть ли что-то аналогичное с простым инсталлятором под виндовс или с php (который уже знаком)? Или ставить perl (с которым сперва необходимо разобраться)? -
2pio: может стоит глянуть на что-то типа http://www.assembla.com/, чтобы меньше времени и сил тратить на установку и настройку некоторых инструментов.
-
CVS/Bugzilla? Каменный век вроде как уже закончился.
Поддержу СВ: assembla.com или launchpad.net
-
Подскажите, а когда багтрекинговая система начинает использоваться в проекте?
-
В домашнем проекте может никогда и не начать использоваться :-)
-
Я конечно понимаю,что есть куча модных штучек, но все-таки порекомендую CVS
Потому что:
1. Это азбука.
2. Большинство открытых исходников лежит в Инете именно в CVS.
3. В реальном проекте будут использоваться не модные концепты, а нечто консервативное и привычное заказчику. -
> Подскажите, а когда багтрекинговая система начинает использоваться в проекте?
когда надоест вести список багов в файлике TODO :)
В качестве багтрека использовал mantis - очень простой и удобный. -
<q>Напроситься? К кому? В коммерческий проект = получить работу джуниора - собс-но цель. Других вариантов, имхо, или нет или хорошо спрятаны.</q>
В опенсорсный проект. Выбери проект по душе, изучи код, придумай улучшения, обсуди их с разработчиками, реализуй, предложи патчи. В реальном проекте вряд ли тебе придется начинать с нуля -- чаще приходится вникать в написанный код. Да и начальный опыт работы в команде будет.
В резюме "контрибьютор в XXX" смотрится очень даже ничего.