Форум на Kuban.ru (http://forums.kuban.ru/)
-   Разработка программ (http://forums.kuban.ru/f1024/)
-   -   Реально ли переучиться с админа на java-погромиста (http://forums.kuban.ru/f1024/real-no_li_pereuchit-sya_s_admina_na_java-pogromista-6897643.html)

Фантом 21.06.2015 15:45

80-Добрых дел мастер >[url]https://javatalks.ru/topics/7428[/url]

Добрых дел мастер 22.06.2015 09:16

Спасибо. Там есть, что почитать. Аж глаза разбегаются.

Zam11 22.06.2015 09:26

"Хочу заниматься серверным программированием, но очевидно, что первые N заказов мне выбирать не придется. Буду брать, что дают."

Кто давать будет?

Добрых дел мастер 22.06.2015 10:07

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

Добрых дел мастер 22.06.2015 10:11

"В частном случае" читать как "В данном случае".

40KHYTbIU 22.06.2015 10:58

80-Добрых дел мастер > Можешь паттерны изучить, уменьшает количество гомнакода.

zampolit2006 22.06.2015 11:40

86-40KHYTbIU > И добавляет тоже.

zampolit2006 22.06.2015 11:41

79-Фантом > Алгоритмы примерно знать это конечно хорошо, но вот расскажи, как часто ты пишешь сам функцию сортировки? :)

wayerr 22.06.2015 13:00

достаточно того что на собеседования как правило спрашивают алгоритмы и структуры данных - собственно и все, если их учить то только ради HR

а в практике всегда можно взять очередной справочник и раскурить что там из алгоритмов подходит под текущуюю задачу

Фантом 22.06.2015 13:19

88-zampolit2006 > Я сам только изучаю джаву. Думаю, в работе не так уж и часто это нужно.
Весь смысл в том, что это почти всегда на собеседованиях спрашивают.
Ну и есть специализированные области, где нужно все-таки знать эти алгоритмы. Например, очень жестко их спрашивают при приеме на работу в яндекс. Всякие красно-черные деревья и прочее.

Добрых дел мастер 22.06.2015 14:18

То есть алгоритмы можно отложить на потом?

А можно поподробнее про паттерны? Раз уж начал учиться - лучше сразу правильно учиться. По себе прекрасно знаю, как приобретаются плохие привычки и как их потом тяжело выковыривать.

40KHYTbIU 22.06.2015 15:37

91-Добрых дел мастер >
[url]www.sugardas.lt/~p2d/books/Priemioop.pdf[/url]

Добрых дел мастер 22.06.2015 19:03

Вы меня не правильно поняли.
Книжки я найду. Это не сложно.
Я сейчас решаю другую задачу: как составить правильный план. Что за чем в каком порядке учить.

Фантом 22.06.2015 20:36

Если интересно, вот план лекций с джавараш. Автор утверджает, что человек, полностью прошедший этот курс, будет примерно соответствовать уровню джуниора.
[img]http://storage4.static.itmages.ru/i/15/0622/h_1434994479_4418465_2c4e22ceda.jpg[/img]
[img]http://storage1.static.itmages.ru/i/15/0622/h_1434994531_8900952_1924a67d09.jpg[/img]
[img]http://storage2.static.itmages.ru/i/15/0622/h_1434994562_6403910_b4c070be1d.jpg[/img]

Mamashka 23.06.2015 08:53

Я никогда не занималась программированием. Моя стихия - математика. Но, прочитав эту тему, поняла, что мне это несколько интересно.
Начала с того, что установила на комп jdk и netBeans (это, если честно, были первые трудности, нов се получилось). Первая программа с первыми переменными запущена и работает как надо. Даже с вариациями относительно того, что предложено у Ноутона)).
Слабое представление имею, для чего все это надо. Но, думаю, разобраться при желании можно.
И еще. Конечно, нужен английский хороший. Не на уровне "Как тебя зовут?"

Zam11 23.06.2015 09:19

Mamashka - прикладные задачи есть?

Mamashka 23.06.2015 09:31

96-Zam11 >Меня такие вопросы ставят в тупик. Я на 45 странице только. Я даже не знаю, что такое "прикладные задачи". Но мне интересно программирование с точки зрения упрощения мат. операций. Чтобы были, например, программы, которые умеют решать задачи текстовые (типовые). И мне интересно, как это реализуется.
Пока не догоняю одного, как идет взаимодействие с пользователем. Вероятно, что его вовсе нет.
Например, пользователь вводит значение скорости 1-го автомобиля, а ему программа считает что-то. Вот есть ли такой ввод - вопрос.

Mamashka 23.06.2015 09:47

Написала такую программу

class prog_1 **
public static void main (String args[]) **
int s;

for(s = 0; s < 10; s--)
System.out.println("Наш вопрос: " + s);
**


**


Программа стала работать бесконечно....

Фантом 23.06.2015 09:53

97-Mamashka >
Как реализуется?
Ну допустим, если решать типовую задачу (автомобиль ехал с постоянной скоростью 100 км/ч два часа), найти пройденное расстояние, то вы в программу закладываете исходную формулу (скорость на время), и когда программа начинает работать, пользователь должен ввести эти параметры.
Но если у вас условие задачи чуть изменится (допустим, час он ехал с одной скоростью и час с другой), то вам в программе под этот случай нужно прописывать уже другую формулу. И, соответственно, вводимые пользователем данные будут уже немного другие.

Фантом 23.06.2015 09:57

98-Mamashka >
Вам надо начать с самых основ. Хотя бы те же первые десять уровней на джавараше (они бесплатные)

for(s = 0; s < 10; s--)
Вот это условие означает:
Начальное значение S = 0. После каждого прохождения цикла уменьшать значение S на единицу. И выполнять цикл до тех пор, пока S меньше десяти.
Т.е. S нужно было не уменьшать (s--) на единицу, а увеличивать (s++), чтобы когда-нибудь условие s<10 не выполнилось и цикл завершился.

Mamashka 23.06.2015 09:59

100-Фантом >Буду разбираться)))

Добрых дел мастер 23.06.2015 10:36

2Mamashka. Может быть вам подумать о фортране?
Там есть шикарная библиотека imsl. Там есть такие математические функции, какие вы не найдете, наверное, нигде.
2Фантом. Я не вижу там пункта "Как сразу привить в себе правильный, красивый стиль программирования, а не говнокодить".

Mamashka 23.06.2015 10:38

102-Добрых дел мастер >Я буду смотреть все. Но уже начала джава, до 60 страницы дошла, программы все установила на комп. Жаль бросать. Пройдусь, чтобы просто иметь представление. Я понимаю, что программирование - не мое. Мне больше нравится другое.

Zam11 23.06.2015 10:53

не дописал... прикладные математические задачи есть?
Мое мнение язык программирования не цель а средство.

Zam11 23.06.2015 10:55

Гиперболоид нарисовать например...

Добрых дел мастер 23.06.2015 11:12

[quote=Zam11;39355781] не дописал... прикладные математические задачи есть? Мое мнение язык программирования не цель а средство. [/quote]
Когда на первом курсе нам рассказывали про группы перестановок - никто тоже не понимал, зачем они нужны. Бред какой-то.
А когда накопилась определенная критическая масса знаний про теорию групп - и вопросы сами собой отпали.

Добрых дел мастер 05.07.2015 16:35

Снова вопрос про примеры.
Существуют ли аналоги javarush, но без сказочных персонажей? Можно даже на английском. Может быть - книжка хорошая именно "задачник".
Просто у меня это вызывает жесткое отторжение.
И нужен ли javarush после освоения Thinking in Java. Пока-что это книжка неплохо в меня идет.

Elu_Tingol 09.07.2015 17:58

джавараш нужен только ради сотен задач по джаве ради оттачивания навыков.
без постоянного коддигна у тебя книжка начисто выветрится через неделю.

я вот по с# все искал аналог джавараша, но его еще не изобрели, а жаль.
Годных задач в сети нет, есть только 100500 видео курсов для даунов за большие деньги.

Добрых дел мастер 09.07.2015 19:15

ну, из практики у меня на ближайшее время запланировано написать программки, автоматизирующие мою работу (особенно - ее бюрократическую часть: открыть заявку, заказать деталь, вывезти деталь, закрыть заявку, выполнить еще кучу глупых бессмысленных действий...).
Потом - переписать некоторые скрипты, которые уже автоматизируют другую часть моей бессмысленной работы.
Возможно - переписать еще некоторое не слишком сложное ПО, которым я пользуюсь...
Ну, а когда освоюсь - придумаю что-нибудь еще, чтобы осваивать технологии, которые вышеуказанные примеры не охватывают.

Тут еще один вопрос:
После окончания вышеуказанной книжки что стоит продолжать? Сразу ЕЕ? Или паттерны? Или про юнит-тесты почитать?
Хочется сразу привить себе хороший стиль, чтобы потом не бороться с говнокодам, а сразу учиться, как правильно.

wayerr 10.07.2015 18:42

>Сразу ЕЕ? Или паттерны?

[url]http://www.ozon.ru/context/detail/id/2457392/[/url]

[url]http://www.ozon.ru/context/detail/id/4884925/[/url] (и вообще товарища фаулера, в частности [url]http://martinfowler.com/articles/injection.html[/url] - это есть и в javaee и в спринге, и даже в андроид тащат)

а про юнит тесты книги - это изврат, там одной статьи хватит

Добрых дел мастер 10.07.2015 23:57

блин. Вы до сих пор не можете меня понять.
С выбором конкретной книги по определенной теме проблем нет. Я умею вбивать в гугл фразу "лучшая книга по ...".
Вопрос в другом:
- Какую тему изучать следующей.
- Насколько хорошо я должен освоить предыдущую тему прежде, чем приступать к следующей? Должен ли я 10 раз прочитать "философию" до полного просветления, или переходить к следующей теме, а через годик-другой вернуться?
- Как часто возвращаться? Я читал мнение, что некоторые книги нужно читать при каждом левелапе.
- Опять же, какие темы нужно освоить? Паттерны? ЕЕ? Фреймворки? Смежные технологии(sql, html, ...)? Мне сейчас хотелось бы составить какой-нибудь "план-график".
Понятно, что практику я буду искать начиная с прямо сейчас. Сначала - программки для себя любимого, потом - фриланс, может - вольюсь в какую-нибудь команду... если повезет.
Кстати, когда я смогу с чистой совестью называть себя джуниором? Какой объем данных для этого нужно освоить?
Кстати, практикуются ли "графические средства проектирования приложений" (типа ER-диаграмм в sql)?

Elu_Tingol 11.07.2015 08:29

10 раз мало. 20 раз. причем крайне желательно читать параллельно чистый код. И сравнивать рекомендации со своим кодом.
не быдлокодить с начала -самое сложное.
я поэтому на джавараш подсел = там за это бьют по пальцам.
философия + чистый код, затем 3-4 приложения на основе прочитанного - пихай туда все - бд, сериализацию, потоки...
потом читаем паттерны банды четырех, и ... переделываем все програмки.
Если ты думаешь, что сразу можешь начать читать паттерны и ничего не переделывать - ты ошибаешься, бо тогда потратишь время зря.
Ты ДОЛЖЕН видеть свои ошибки ДО книги.
этих советов тебе месяца на 3 хватит.

Elu_Tingol 11.07.2015 08:34

[quote=Добрых дел мастер;39513832]Кстати, когда я смогу с чистой совестью называть себя джуниором? Какой объем данных для этого нужно освоить?[/quote]

миллион строк кода - не генерированных.

[quote=Добрых дел мастер;39513832]Кстати, практикуются ли "графические средства проектирования приложений" (типа ER-диаграмм в sql)?[/quote]
джава это не шарп - гуй фреймворки только для себя для поиграться.
[quote=Добрых дел мастер;39513832]Сначала - программки для себя любимого, потом - фриланс, может - вольюсь в какую-нибудь команду... если повезет.[/quote]
черт, ты кажется не понимаешь.
На джаве Не пишут сайты, декстопные приложения, игрушки, и т.д
на жаве пишут либо под андроид, если сайт - то огромный портал (но редко, больше все же джумлы всякие, или асп.нет)
или ынтерпрайз.
все. больше на жаве не пишут ничего.
скрипт на жаве?
обычно скрипты пишут на декстопных языках - шарпе, плюсах и их подобных.
Написать ты конечно скрипт можешь, но времени уйдет в разы больше.

Добрых дел мастер 11.07.2015 12:46

[quote=Тингол;39514372]10 раз мало. 20 раз. причем крайне желательно читать параллельно чистый код. И сравнивать рекомендации со своим кодом. не быдлокодить с начала -самое сложное. я поэтому на джавараш подсел = там за это бьют по пальцам.[/quote]
Я не заметил, чтобы там следили за качеством кода.
[quote=Тингол;39514388]миллион строк кода - не генерированных.[/quote]
Это не преувеличение?
[quote=Тингол;39514388]> Кстати, практикуются ли "графические средства проектирования приложений" (типа ER-диаграмм в sql)?
джава это не шарп - гуй фреймворки только для себя для поиграться.[/quote]
Вы не правильно поняли. Не "гуй фреймворки", а "проектирование приложения. Посмотрите на ER-диаграммы. Там рисуются всяческие связи различных таблиц, а потом все это реализуется.
Здесь такой же вопрос: практикуется ли сначала в какой-нибудь визуальной фигне спроектировать структуру программы перед ее реализацией?
[quote=Тингол;39514388]черт, ты кажется не понимаешь. На джаве Не пишут сайты, декстопные приложения, игрушки, и т.д на жаве пишут либо под андроид, если сайт - то огромный портал (но редко, больше все же джумлы всякие, или асп.нет) или ынтерпрайз. все. больше на жаве не пишут ничего. скрипт на жаве? обычно скрипты пишут на декстопных языках - шарпе, плюсах и их подобных. Написать ты конечно скрипт можешь, но времени уйдет в разы больше. [/quote]
Мне в моей работе встречается довольно много приложений на яве. Это, конечно, в основном энтерпрайз. Например - документум. Или Brocade network advisor. Практически весть софт от IBM, очень многое от Oracle.
Я понимаю, что воткнуться туда будет ой как сложно, но буду надеяться. Не получится - значит займусь андройдом.

Кстати, я еще очень зеленым айтишником пытался запустить биллинг (название уже не помню), написанный на яве, на линуксе. Теоретически, все должно было быть ок. Практически - были очень большие проблемы с большими\маленькими буквами в именах файлов. Хуже было то, что разные модули хотели файлы с разным сочитанием больших\маленьких букв.

Добрых дел мастер 11.07.2015 12:48

[quote=Тингол;39514372]Если ты думаешь, что сразу можешь начать читать паттерны и ничего не переделывать - ты ошибаешься, бо тогда потратишь время зря.[/quote]
Вот это и главный вопрос. И я уверен, паттерны - это не единственное, что "если ты думаешь, что сразу можешь..."
Вот поэтому и спрашиваю, что и в каком порядке осваивать.

zampolit2006 12.07.2015 09:18

Скрипты обычно пишут на "плюсах"?? Это что-то новенькое, как и "десктопный язык шарп". :)

Zam11 13.07.2015 09:55

Как успехи?

Добрых дел мастер 13.07.2015 12:56

Пока рассказать не о чем.
Читаю книжку, решаю примеры. Регулярно узнаю что-то новое. Пока процесс идет.
Я годик (тогда была коротенькая неудавшаяся попытка взять и изучить яву) назад с помощью гугла написал пару программок. Сейчас смотрю на них и понимаю, что я их не покажу никому.

zeb 16.07.2015 18:55

Меня как то прямо настораживает подход что вы хотите сразу до уровня сеньора. По моему что бы доработаться до синьора это надо мало того что работать в команде с сильными спецами несколько лет надо еще постоянно заниматься самообразованием. Т.е работать 8 часов в офисе а потом приходить и читать читать, выполнять задания, читать, пробовать. Я работаю в Питере 5 лет и скажу что я за это время не сильно приблизился к уровню своих коллег, причем я и до этого программировал и в целом то все умел и много чего знал. Плюс синьор обычно еще несет на себе нагрузку управленца ну или человека который ведет проект и может ответить на все технические вопросы по данному проекту. В общем по моему планка задрана высоко. Но опять же при желании и усердии возможно все. По моему верный путь это постоянное самообразование и периодическая (раз в полтора года) смена работы. А без работы в команде над коммерческим проектом это вообще одно баловство. По книжкам спецом не стать. Опыт важен.

Фантом 16.07.2015 21:16

Если интересно - вот история с хабра, человек в 29 начал джаву изучать (до этого, как я понял, занимался программированием микроконтроллеров на Си), за четыре или пять лет вырос до уровня сеньора.
Я с ним на javatalks пообщался - он там постоянно обитает. Как я понял, дольше года он обычно на одном месте не сидел, постоянно менял работу.
В статье полный путь не описан, но все равно интересно
[url]http://habrahabr.ru/company/dataart/blog/234003/[/url]


Текущее время: 19:24. Часовой пояс GMT +3.