Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 30
×

Обираємо редактор коду

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

Для кожного розробника будь якого програмного забезпечення дуже важливе середовище для розробки продукту. Сьогодні існує безліч інструментів для спрощення розробки, і посеред них можна виділити три основних типи:
— Desktop Редактори коду
— IDE
— Online редактори коду

Я не розглядатиму Online редактори, тому що вони потребують постійного підключення до мережі інтернет, звичайно в наш час це не є проблемою, але я поки що не бачу в них жодної переваги над desktop версіями.

Просто пригадаю інструменти які я коли не будь встановлював, і бодай трохи ними користувався. Eclipse, IntellijIdea, NetBeans, Sublime, Atom, Visual Studio Code, Brackets, Vim, Nano, Notepad++. Що я можу порадити Вам? Перш за все обрати саме редактор коду, а не повноцінну IDE. В чому різниця? Справа в тому, що Integrated Development Environments (Інтегровані Середовища Розробки) перш за все призначені для найбільш продуктивної генерації коду. Вони настільки «розумні», що здатні генерувати деякі частини коду автоматично, без участі людини. Звичайно це дуже корисна функція для програмістів які добре знають свою справу, і заробляють гроші. Такі програми зберігають час розробника, і дозволяють йому бути максимально продуктивним. Але наголошую!! це дуже добре для проффесіоналів, які, як то кажуть, знають що і звідки береться. Для людей які відносяться до таких речей як простір імен, підключення бібліотек і класів, наслідування та інкапсуляції як до абсолютно зрозумілих явищ.

Але я категорично не раджу новачкам використовувати IDE для навчання. Приведу простий приклад. В NetBeans можна створити новий клас за допомогою кількох кліків. Але я запевняю Вас, що через кілька місяців вдалої розробки за допомогою IDE Ви наврд чи зможете без помилок написати клас в звичайному редакторі. А все тому, що Ви просто не знатимете, або швидко забудете синтаксис мови, очевидні речі за Вас виконуватиме програма. Звичайно, я навів найпростіший приклад, але те що тенденція повного нерозуміння відбуваючихся процесів зберігатиметься то це гарантовано. Ви просто не розумітимете чому працює Ваш код, або чому не працює. Тому я ще раз раджу використовувати для навчаня саме редактори коду.

Який редактор обрати? Як то кажуть на смак і колір товаришів немає. Який особисто Вам до вподоби, той і обирайте. Звичайно, я склав свою особисту думку про кілька з них, але для того щоб не образити розробників і користувачів цих інструментів моя думка залишиться зі мною. Скажу так — найбільш зручним, особисто для мене, виявився цілком безкоштовний Visual Studio Code. Але наголошую, це лише моє субьєктивне рішення. Можливо я просто не розгледів переваги інших конкурентів.

Під час вибору редактору раджу Вам перш за все звернути увагу на легкість встановлення плагінів, або іншим словом — розширень, а також на те, як легко Ви можете знайти необхідну Вам опцію в інтерфейсі? Чи розумієте Ви технічну документацію до редактору? І взагалі, як Ви себе в ньому відчуваєте, як риба в воді, чи навпаки, як слон в лавці крамаря :-) Все інше можна налаштувати.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn

Найкращі коментарі пропустити

Але я запевняю Вас, що через кілька місяців вдалої розробки за допомогою IDE Ви наврд чи зможете без помилок написати клас в звичайному редакторі.

А зачем писать класс в обычном редакторе?

Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

пишу в cat, так как мне лень устанавливать какой-то вим внутри свежеподнятого докер-контейнера, я один такой?

Для Java — IntelliJ от JetBrains. Причем, можно спокойно качать бету, у которой полный функционал, и раз в месяц обновляться (таким образом действие демо-версии продливается). Лично я купил годовую подписку на Ultimate.

Не знаю, не пробовал. Думаю, что нужно плагинами обвешиваться под другие языки (для скала точно, хотя для JS не нужно такое делать).

Emacs.

по диагонали просмотрел топик:

Мой топ-5 редакторов:
— Sublime Text 3
— VS Code
— Brackets (for little js/html projects only)
— Geany
— Joe (мой любимый консольный редактор)

Мой топ-5 бесплатных IDE:
— Pycharm Community Edition (бесплатная версия лучшей идешки для питона)
— Visual Studio 2010/2012/2013 Shell Integrated (бесплатное и не такое тяжелое и прожорливое как последнее) + Python Tools + Nodejs Tools
— NetBeans PHP
— CodeLite (C/C++/PHP/Node.js IDE)
— SharpDevelop (типа легковесная альтернатива студии для C#/VB.NET/F#)

P.S. и да — солидарен с Еленой Моргун, что

Я думала щас будет онолитега на тему ST vs Atom vs VSCode, а тут какой-то поток рандомной мысли.

не заморачиваться и уделить вниманию более насущным проблемам

Якась мутна стаття. Пару абзаців водички і нічого конкретного.
Замість того, щоб описати конкретні переваги певних ІДЕ, порівняти їх між собою, потім це зробити для текстових редакторів ми бачимо — нічого.
Якщо коротко то ІДЕ розуміє мову на якій пишеш, текстовий редактор — просто розуміє синтаксис.
Із цього усі плюси і мінуси, самі додумайте описувати не буду.
Саме головне, щоб ви там не обрали — вивчіть свій інструмент, вивчіть хоткеї, функціонал і тд..
А то я постійно бачу як люди роблять якісь дії мишкою через меню замість того щоб вивчити пару хоткеїв.

Саме головне, щоб ви там не обрали — вивчіть свій інструмент, вивчіть хоткеї, функціонал і тд..
А то я постійно бачу як люди роблять якісь дії мишкою через меню замість того щоб вивчити пару хоткеїв.

То їм зручніше просто.

Пан мав час, та не знав, куди його діти

А ще оце попишете трохи на плюсах, забудете як на асемблері кропати. Кому таке треба взагалі?

Але я запевняю Вас, що через кілька місяців вдалої розробки за допомогою IDE Ви наврд чи зможете без помилок написати клас в звичайному редакторі.

А зачем писать класс в обычном редакторе?

Все наши классы тщательно отобраны и написаны в ИДЕ, написанном девственницами на рассвете в Мумбае.

ручная работа больше ценится

Все зависит от того, с чем работаешь.
Лучше Визуал студии я не видел. Хотя последние версии заметно испортились — много мусора за собой тянут.
Далее активно использую CodeBlocks, иногда Emacs.
А если быстро подправить надо в скриптах — Notepad++

шел 2017 год, большиство кода по прежнему пишеться в вим\атом\текстпаде в каком нибудь с3 и вообще без х11, на с++. и это потому что .... даже не знаю

То погано?

понятно что плохо, но что бы это понимать нада смотреть с моей колокольни. Когда джависту говоришь что в питоне файл открывается и закрывается одной строкой, джавист начинает расказывать о том что супер-мега интерпразы пишуться только на джаве и т.д. Он конечно частично прав, но это как сравнивать ручную коробку и коробку автомат. Когда вместо пользования ИДЕ которая позволяет делать 70 процентов работы (создавать интрефейсы, рефакторить, автокорректировать и т.д.) люди по прежнему пишут в виме — то это опять дискусия про коробки.

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

Вывести файл в консоль 1 строкой:
Files.lines(Paths.get("manifest.mf"), StandardCharsets.UTF_8).forEach(System.out::println);

List list = new ArrayList();
File file = new File("file.txt");
BufferedReader reader = null;

try {
reader = new BufferedReader(new FileReader(file));
String text = null;

while ((text = reader.readLine()) != null) {
list.add(Integer.parseInt(text));
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (reader != null) {
reader.close();
}
} catch (IOException e) {
}
}

//print out the list
System.out.println(list);

Можно и так.. А можно и одной строкой :)

не все рухнет,а будет эксепшн...а поймать его можно и в main, например, т.е. сразу все эксепшины главного потока по сути.

Когда джависту говоришь что в питоне файл открывается и закрывается одной строкой

Если бы его еще научили нормально работать с кодировками и бинарными данными, вообще цены бы не было!

не все знают что есть третий питон и 9ая джава ))

ну ты еще скажи что двава долна только 6той быть или что там у тебя в заначке ?

Когда выпустят новую версию жабы без обратной совместимости, скажу.

Залежить від мови/фреймворків.
Для мене IDE відрізняється тим, шо вміє перейменовувати змінні у всіх файлах проекту і переміщувати файли, міняючи всюда посилання на них.
А от як на дотнеті писати без IDE, я справді не уявляю.

Це тупо. IDE створювалися поступово, як інструмент автоматизації. Розглядай його не як інструмент, а як супермаркет інструментів. Тобто, не потрібно вчити все, і застосовувати все.

Наприклад, ти ж не вчиш операційну систему на рівні хакера? Включив і працюєш, звісно настроївши її на свій лад.

Вчити IDE також треба поступово. І перше що ти робитимеш — вимикатимеш зайву автоматизацію. Коли тобі автоматом курсор перескакує, дужки ставляться, та інші іграшки для малят. Автоматичні відступи — накуй. Автоматична підсвітка стилістичних «помилок» — до дупи. Автоматичні підказки типізації — в Пізу. І так далі.

Але коли наприклад в тебе є інтерфейс, а тобі з нього треба зробити клієнт-серверну частину — я вже забув як це робити руцями, два кліка і готово.
Пошукати якусь хєрню яку десь писав два роки тому? То вже три кліка :)

Emacs. Потребує певного часу на освоєння, але воно того варто, принаймні, я зацінив. Будете мати єдиний інструмент, незалежно від мови програмування.

если даже и нет, то к community есть плагины почти ко всему мыслимому

я когда-то пробовал комьюнити идею:
1. по-моему, не все плагины работают в ней (хоть их дествительно прилично) + надо смотреть, подходит ли тот или иной плагин для конкретной версии (ну чтобы версия плагина подходила под версию идеи).
Так, пробовал устанавливать плагин для пхп — не захотело почему-то нормально ставиться. :( (может из-за того, что на старую версию идеи ставил — хз)
2. думаю плагинов для идеи все равно меньше, чем плагинов для емакса и вима)

1. Да, сталкивался с такой проблемой
2. хз, не буду спорить

Также IntelliJ, если есть бюджет.

также последняя вижукал студия комьюнити эдишн, которая наверное еще более прожорливая (и которая разжирела по самое немогу), но для которой бюджет нинужен)

Только для всеядных, которые бегают от языка к языку, плюс делают свои иногда (сам такой, потому тоже emacs). Если ты 90% пишешь на джаве, 5% на JS, и 5% XML, то наверное лучше освоить идешечку.

даже гоферы уже на gogland перелезают))
не вижу ни одного сообщества вменяемого размера, которое по доброй воле будет иметь такой геморрой добровольно

Тільки найтрушні пацани розуміють, що таке vim.

А самые трушные умеют из него выходить.

:D А те кто умею выходить без сохранения изменений ??

В детстве я всегда открывал другую консоль или коннектился к машине двумя телнет сессиями, чтобы из второй прибить вим в первой без сохранения изменений. Потом Макс подсказал мне как выходить из вима без сохранений, вот это был праздник!

г...а у меня наоборот проблема была — как сохранить изменения при выходе из вим.

или коннектился к машине двумя телнет сессиями

мені колись screen показали, який я радий був, що білд не переривається, якщо інтернет пропав :-)

приїхав у Штати, показав одному девелоперу з Індії (40+ років, 22 у Штатах) screen/tmux, який він радий був, що можна ноут закрити і не перервати ремоутний білд :-)

Та вони-то розуміють, але ж вони розумні хлопці та марнотратництвом займатись не будуть))

Не только лишь все могут из него выйти.
habrahabr.ru/...​verydaytools/blog/329514

самые трушные кодят в sed

ed

А які альтернативи? Адекватна емуляція vim є не всюди. Чи ти кажеш, шо можна ходити вверх-вниз клавішами зі стрілочками?

емуляція vim

зачем она вообще? разве что кто-то действительно не может привыкнуть лазить по строкам специально предназначенными для этого клавишами)))

Зняти руку з текстової клавіатури на стрілочки можна швидко, але повернути назад треба таки переводити погляд на клавіатуру. Якщо звик не переводити руку, то це затягує.

Після цього звичайний редактор коду з будь-якої ІДЄ буде здаватися якоюсь незручною штукою з сивої давнини.

«не верю» ©

А от редагування тексту порівняно з Вім/Імакс таке собі.

а вот тут я попрошу конкретных примеров, «на пальцах»

А ще Ви від щирого серця пропонуєте дебажити принтами, щоб не звикати до зайвих програм, на які раптом може не бути прав на сервері.

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

Льоша, дивлюсь що начебто ви не глибоко вночі створювали цю тему... і тим більше не в п’ятницю вечером... Вам просо скучно? =).

Стосовно ваших рекомендацій і викладеної основної думки «не дай боже не користуватись IDE, якщо ви — новачок, бо потім не зможете без IDE згадати навіть назву потрібного класу». По-моєму — це оманлива думка.

По-перше, для чого розробникам вчитись працювати без IDE? Вони скоро стануть усі платними і коштуватимуть «захмарні ціни»? — Очевидно, що це з реальністю не має нічого спільного.

Щоправда, на двох співбесідах мене дійсно просили писати код на дошці й на листочку, і у мене дійсно було сильне відчуття, що «чогось тут сильно не вистачає», але тим конторкам, як виявилось пізніше, потрібен був ІТ-викладач, у якого не завжди під рукою буде проектор... ну то таке.

P.S. Оскільки я останні пару-трійку років пишу на TypeScript, то мій вибір VS Code — однозначно найкращий, навіть враховуючи платний WebStorm.

mcedit

P.s. топик тоже не читал.

це дуже добре для проффесіоналів

:D

Да ну, перестаньте! Android Studio тут лидер. И все! Даже спорить неочем.

Я бы назвал это «гороскоп редакторов кода». Водолеям на этой неделе рекомендовано воздержаться от использования VSCode. Овнов, при использовании продуктов JetBrains, ждет счастье и успех.

А для дев что?

Это печально, не буду значит сегодня работать

У дев эта неделя выдастся неблагополучной, поэтому им рекомендуется воздержаться от сложного и прибегнуть к использованию простых команд: echo и cat.

cat $file > /dev/null && rm -f $file

sed ащето.

аналогично про рыб хотел спросить)

Рыбам, как водяному знаку, рекомендуется использовать в этом месяце одновременно два редактора, как то atom и vscode. Переливая из «пустого в порожнее» свой код они будут привлекать удачу и успех в бизнесе.

Переливая из «пустого в порожнее» свой код они будут привлекать удачу и успех в бизнесе.

це ж про Водолїв, ваш Кеп.

а для Риб ... хз, щось сходу нічого в голову не приходить

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

kdevelop

P.S. топик не читал

Это же очевидно! Цель топика в увеличении энтропии и приближении неизбежно грядущей информационной сингулярности.

Підписатись на коментарі