Настоятельно рекомендую cs50.edx.org Первая половина курса — отличный курс обучения по С, со своей браузерной ide на Cloud9 (аналогов для работы в браузере подозреваю что нет). Если сам курс не интересен — то можно просто Cloud9 попробовать (хотя я смотрел только версию ide от cs50, и все положительные впечатления оттуда).
Можно работать с любого устройства с браузером (в том числе и с андроида). Там полноценный Linux — bash, make, clang и т.д. «Визуальный» дебаггер есть от cs50, или из командной строки средствами Linux. Хороший текстовый редактор, файловый менеджерер (хотя опять таки, можно средствами Linux с файлами работать).
— Dev-C++ ( sourceforge.net/projects/orwelldevcpp ) , — CodeLite ( codelite.org ), — Orange C ( github.com/LADSoft/OrangeC , включает IDE-шку, правда не знаю насколько удобную, но запускал, показалось, что она достаточно функциональна). — Geany (типа «дешево и сердито», в том плане, что базовый функционал у нее по-моему скромный как для IDE — она больше нечто среднее между продвинутым редактором и идешкой). — Anjuta (только для линуха правда) — Pelles C ( ru.wikipedia.org/wiki/Pelles_C )
Под Андроид не в курсе есть ли полноценная си-шная идеха, но думаю может подойти любой редактор с подсветкой.
Якщо «вивчити мову», а не «написати проект, який буде робити....», то Вам IDE загалом не потрібна. Notepad++ та gcc в external tools, чи як воно там у них називається. Єдине шо — не буде можливості дебаг режиму. Великі сумніви, що VisualStudio запропонує тип проекту «C console application». Мінімум — С++. Так що якщо дебаг, то потрібен монстер або динозавр. Для РС. В лінуксі, може, з цим краще справи в 2017
Atom можно поднастроить для C++, но я бы не рекомендовал... уж больно он кастамизируемый :)) Но можно... можно еще Visual Studio Code под мак — code.visualstudio.com/docs/languages/cpp. Но сказать ничего не могу — использую VSC для Golang и пока доволен.
Мне нравится Атом тем, что всегда можно «донавернуть» под свои потребности, а в базовом минимуме остается визуально приятным и удобным редактором на любой платформе. Периодически приходится скакать в работе с одной ОС на другую (по крайней мере мне). И после пары месяцев работы например в TextMate я плакал потом в Geany)
Я недавно начал использовать Eclipse. Относился к нему скептически (когда-то использовал его для Java), попробовал — в принципе понравилось, последний Neon научился делать наконец какие-то элементарные вещи как я люблю без плагинов, например делать soft wrap. Codeblocks как-то не понравился чисто субъективно интерфейсом, но это вкусовщина, не более — вроде тоже нормальная IDE. Ну и Notepad++ конечно, под линукс есть его очень неплохой аналог Notepadqq, тоже смог в нём нормально писать, минималистично, симпатичная подсветка синтаксиса. Про андроид не отвечу, т.к. в момент когда мне так уж приспичивает кодить с телефона в автобусе, я захожу с 3g по RDP на виндоус-сервак и пишу на нём. А вообще, что примечательно, у меня есть коллеги на работе, которые обращаются с вимом (с гвимом, точнее) шустрее, чем я с иде. У меня челюсть отваливается каждый раз.
Если изучать С не как латинский язык, а как нечто, что нужно будет использовать, я бы рекомендовал не трогать IDE вообще. Причина проста — в мире С с инфраструктурой полный швах, каждый строит свой шалаш из говна и палок. IDE не обладают магическими способностями (тем более существующие IDE для С), так что при работе с чужим кодом со своим привычном воркфлоу может возникнуть непреодолимое желание выпрыгнуть из окна. Лучше взять любимый текстовый редактор, и научиться им пользоваться.
Новичка необходимо научить компилировать, линковать, запускать компилятор с ключами, указывать пути к либам и хедерам. Потом — да, но когда ты новичок, забот и так хватает.
Но примерно так и получаются писатели на Visual Studio и «C++»
Не согласен, я например благодарен Borland C/C++ за моё счастливое детство, я даже не знал, что можно запустить компилятор руками, мейкфайлы открыл для себя спустя много лет.
Опять же, смотря какие цели вы ставите. Если просто пописать проектики, то IDE (в большинстве случаев) за вас все соберет. Если хотите заморачиватся с системой автосборки, то смотрите в сторону CMake, SCons, #чтонибутьэкзотическоенавашвкус...
Так мне как раз make нравится. Просто многие его критикуют, но тысячи проектов по-прежнему собираются мэйком, особенно в эмбеддеде. Значит не так уж он плох.
На вкус и цвет фломастеры разные. Лично мне мэйк не нравится. Какой-то птичий язык с дурнуватым синтаксисом. Не нравится именно тем что каждый раз нужно морщить мозг и вспоминать что обозначают все эти символы. Вместо того чтобы просто читать что и в какой последовательности собирается.
Посмотри в сторону как реализована сборка в BSD системах — есть системные .mk файлы с кучей кода, в своём проекте ты просто их подключаешь, они по умолчанию собирают все исходники в текущем каталоге. Естественно, можно всё кастомизировать по надобности. Как пример:
Единственное, что плохого в мейкфайлах — под виндой это смерть. Каждый запуск процесса, каждое открытие файла, перенаправление в пайпы — это секьюрити, которое замедляет работу в десятки раз. То, что для юникс систем естественно — в винде это жопоболь.
С чем не согласен? С тем что выходят писатели на VisualStudio, которые даже не понимают на каком языке пишут? :) Начнешь учить С в какой-нибудь среде, а оно тебе по дефолту gnu99 оставит, или вообще gnu++11. Понятное дело, в старые далекие времена на венде особо вне UI не получалось бы нормально писать, если у тебя интернета нет, и ты нубас. Но сейчас же ХХI век на дворе. Маки, ванильный кофе, make CLI great again, вот это все..
Ну не буду спорить. Все равно ТС скорее всего забъет. В оригинальном посте есть слово Андроид. Вы представляете как ужасно писать на С на андроиде (в дороге наверное)?
ачнешь учить С в какой-нибудь среде, а оно тебе по дефолту gnu99 оставит, или вообще gnu++11.
gnu++11 -> gnu11. Ну и что? Ему до тех ньюансов как до Киева раком.
Понятное дело, в старые далекие времена на венде особо вне UI не получалось бы нормально писать, если у тебя интернета нет, и ты нубас.
Видать у меня сильно далёкие времена, UI->TUI, винда -> DOS, интернет -> FIDO.
В оригинальном посте есть слово Андроид. Вы представляете как ужасно писать на С на андроиде (в дороге наверное)?
Не только представляю, но и делаю, только у меня внешняя клавиатура Gear Head mini USB keyboard есть с собой. С телефона навигация по коду невозможна, увы.
ИДЕ может глюкнуть со свойствами проекта так, что и опытный на говно изойдет, пока найдет в чем дело. Полгода назад пришлось причесывать драйверный проект под последней Visual Studio. Волком выл. А makefile, если нет сложных зависимостей, он с листа читается и любая ошибка ловится на ура. И в конфигурационные XML-и лезешь потом без малейшего смущения.
Конкретно его не использовал. Писал нативный код под андроид в Android studio, которая на том же движке. НАСТОЛЬКО удобно, все касты, куча подсветок, ворнингов, рефакторингов. Как VS + решарпер, только в 10 раз круче. Если придётся писать на С/С++ — обязательно попробую CLion. Сэкономленное время окупит его стоимость за первые несколько дней.
Сын уже пишет на нём 1.5 года, ещё ни разу не жаловался. А вся ценность эклипса заключена в плагинах к CDT, которые новичку даром не нужны, а тащить этого монстра ради редактора сомнительная затея.
65 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарівXCode, VS Code
Настоятельно рекомендую cs50.edx.org
Первая половина курса — отличный курс обучения по С, со своей браузерной ide на Cloud9 (аналогов для работы в браузере подозреваю что нет).
Если сам курс не интересен — то можно просто Cloud9 попробовать (хотя я смотрел только версию ide от cs50, и все положительные впечатления оттуда).
Можно работать с любого устройства с браузером (в том числе и с андроида).
Там полноценный Linux — bash, make, clang и т.д.
«Визуальный» дебаггер есть от cs50, или из командной строки средствами Linux.
Хороший текстовый редактор, файловый менеджерер (хотя опять таки, можно средствами Linux с файлами работать).
Щось «по швидкому» зробити/поправити — vi
А так сподобався Visual Studio Code code.visualstudio.com Дужє шустрий і зручний.
— Dev-C++ ( sourceforge.net/projects/orwelldevcpp ) ,
— CodeLite ( codelite.org ),
— Orange C ( github.com/LADSoft/OrangeC , включает IDE-шку, правда не знаю насколько удобную, но запускал, показалось, что она достаточно функциональна).
— Geany (типа «дешево и сердито», в том плане, что базовый функционал у нее по-моему скромный как для IDE — она больше нечто среднее между продвинутым редактором и идешкой).
— Anjuta (только для линуха правда)
— Pelles C ( ru.wikipedia.org/wiki/Pelles_C )
Под Андроид не в курсе есть ли полноценная си-шная идеха, но думаю может подойти любой редактор с подсветкой.
хотя... попробовал в деле только что Orange C — ну его нафиг... какое-то кривовато-глюковатое оно...
Якщо «вивчити мову», а не «написати проект, який буде робити....», то Вам IDE загалом не потрібна. Notepad++ та gcc в external tools, чи як воно там у них називається. Єдине шо — не буде можливості дебаг режиму.
Великі сумніви, що VisualStudio запропонує тип проекту «C console application». Мінімум — С++.
Так що якщо дебаг, то потрібен монстер або динозавр. Для РС. В лінуксі, може, з цим краще справи в 2017
Вот только новичок сделать «си» там не сможет потому что он ещё не знает как компилятор отличает «си» от «си++»...
ЗЫ: да он и сам новичок ещё не отличает тоже...
Code::Blocks www.codeblocks.org
SublimeText + make
або VIM якщо хочеш трохи помучатися
/офтоп/ ВІМом мучатись не треба, ним треба насолоджуватись :)
хіба що ви послідовник бдсм філософіі
gvim зі своіми «вікнами» намальованими псевдографікою досі лишився в минулому столітті
Тем не менее даже сегодня Far на два порядка лучше всяких тотал командеров.
vi.
Atom?
Atom можно поднастроить для C++, но я бы не рекомендовал... уж больно он кастамизируемый :)) Но можно... можно еще Visual Studio Code под мак — code.visualstudio.com/docs/languages/cpp. Но сказать ничего не могу — использую VSC для Golang и пока доволен.
Мне нравится Атом тем, что всегда можно «донавернуть» под свои потребности, а в базовом минимуме остается визуально приятным и удобным редактором на любой платформе. Периодически приходится скакать в работе с одной ОС на другую (по крайней мере мне). И после пары месяцев работы например в TextMate я плакал потом в Geany)
Я недавно начал использовать Eclipse. Относился к нему скептически (когда-то использовал его для Java), попробовал — в принципе понравилось, последний Neon научился делать наконец какие-то элементарные вещи как я люблю без плагинов, например делать soft wrap. Codeblocks как-то не понравился чисто субъективно интерфейсом, но это вкусовщина, не более — вроде тоже нормальная IDE. Ну и Notepad++ конечно, под линукс есть его очень неплохой аналог Notepadqq, тоже смог в нём нормально писать, минималистично, симпатичная подсветка синтаксиса. Про андроид не отвечу, т.к. в момент когда мне так уж приспичивает кодить с телефона в автобусе, я захожу с 3g по RDP на виндоус-сервак и пишу на нём.
А вообще, что примечательно, у меня есть коллеги на работе, которые обращаются с вимом (с гвимом, точнее) шустрее, чем я с иде. У меня челюсть отваливается каждый раз.
www.viemu.com/a-why-vi-vim.html
stackoverflow.com/a/1220118
Чтоб делать упражнения из Кернигана и Ритчи IDE не нужно, хватит блокнота с подсветкой.
А никто не спросил, что именно на Си человек писать собирается?
#
notepad++. Сам пробовал — понравилось.
Если изучать С не как латинский язык, а как нечто, что нужно будет использовать, я бы рекомендовал не трогать IDE вообще. Причина проста — в мире С с инфраструктурой полный швах, каждый строит свой шалаш из говна и палок. IDE не обладают магическими способностями (тем более существующие IDE для С), так что при работе с чужим кодом со своим привычном воркфлоу может возникнуть непреодолимое желание выпрыгнуть из окна. Лучше взять любимый текстовый редактор, и научиться им пользоваться.
Новичка необходимо научить компилировать, линковать, запускать компилятор с ключами, указывать пути к либам и хедерам. Потом — да, но когда ты новичок, забот и так хватает.
Ну тут мнения могут быть разные, но даже студент с чистым разумом способен запустить gcc x.c; ./a.out
В целом, конечно, дело хозяйское. Но примерно так и получаются писатели на Visual Studio и «C++»
мейкфайлы — это почти ФП :)
А есть какая-то нормальная альтернатива? cmake или вручную настраивать все в какой-нибудь иде?
Опять же, смотря какие цели вы ставите. Если просто пописать проектики, то IDE (в большинстве случаев) за вас все соберет. Если хотите заморачиватся с системой автосборки, то смотрите в сторону CMake, SCons, #чтонибутьэкзотическоенавашвкус...
Так мне как раз make нравится. Просто многие его критикуют, но тысячи проектов по-прежнему собираются мэйком, особенно в эмбеддеде. Значит не так уж он плох.
На вкус и цвет фломастеры разные. Лично мне мэйк не нравится. Какой-то птичий язык с дурнуватым синтаксисом. Не нравится именно тем что каждый раз нужно морщить мозг и вспоминать что обозначают все эти символы. Вместо того чтобы просто читать что и в какой последовательности собирается.
Посмотри в сторону как реализована сборка в BSD системах — есть системные .mk файлы с кучей кода, в своём проекте ты просто их подключаешь, они по умолчанию собирают все исходники в текущем каталоге. Естественно, можно всё кастомизировать по надобности. Как пример:
include qconfig.mk
INSTALLDIR=usr/bin
include qmacros.mk
include qtargets.mk
LDOPTS+=-ldrm
EXTRA_INCVPATH+=$(wildcard $(addsuffix /libdrm/,$(USE_ROOT_INCLUDE)))
Единственное, что плохого в мейкфайлах — под виндой это смерть. Каждый запуск процесса, каждое открытие файла, перенаправление в пайпы — это секьюрити, которое замедляет работу в десятки раз. То, что для юникс систем естественно — в винде это жопоболь.
С чем не согласен? С тем что выходят писатели на VisualStudio, которые даже не понимают на каком языке пишут? :) Начнешь учить С в какой-нибудь среде, а оно тебе по дефолту gnu99 оставит, или вообще gnu++11. Понятное дело, в старые далекие времена на венде особо вне UI не получалось бы нормально писать, если у тебя интернета нет, и ты нубас. Но сейчас же ХХI век на дворе. Маки, ванильный кофе, make CLI great again, вот это все..
Ну не буду спорить. Все равно ТС скорее всего забъет. В оригинальном посте есть слово Андроид. Вы представляете как ужасно писать на С на андроиде (в дороге наверное)?
Видать у меня сильно далёкие времена, UI->TUI, винда -> DOS, интернет -> FIDO.
Не только представляю, но и делаю, только у меня внешняя клавиатура Gear Head mini USB keyboard есть с собой. С телефона навигация по коду невозможна, увы.
ИДЕ может глюкнуть со свойствами проекта так, что и опытный на говно изойдет, пока найдет в чем дело. Полгода назад пришлось причесывать драйверный проект под последней Visual Studio. Волком выл.XML-и лезешь потом без малейшего смущения.
А makefile, если нет сложных зависимостей, он с листа читается и любая ошибка ловится на ура. И в конфигурационные
emacs
Мармелад СДК + МС Визуал Студия
сам сижу на 2012
-
Vim + ctags
Я б сказав Vim+YouCompleteMe+FZF.
+cscope :-)
але то все не для новачка
новачку реально Turbo C буде в сам раз
Text Editor :)
Конкретно его не использовал. Писал нативный код под андроид в Android studio, которая на том же движке. НАСТОЛЬКО удобно, все касты, куча подсветок, ворнингов, рефакторингов. Как VS + решарпер, только в 10 раз круче. Если придётся писать на С/С++ — обязательно попробую CLion. Сэкономленное время окупит его стоимость за первые несколько дней.
Исключительно Turbo C от Borland.
А чому виключно ваш варіант?
Тому що тру! )
Добре) будемо сприймати як аргумент)
Qt Creator
Eclipse
Мне понравилось вот это: www.codeblocks.org Его в Канаде используют в школах под виндой + mingw компилятор. www.codeblocks.org/downloads/26
Просто. Сердито, но для новичка вполне приличный инструмент.
Я пользовал когда-то. Можно огрести гемор на ровном месте. Лучше уж эклипс
Сын уже пишет на нём 1.5 года, ещё ни разу не жаловался. А вся ценность эклипса заключена в плагинах к CDT, которые новичку даром не нужны, а тащить этого монстра ради редактора сомнительная затея.
Ну ок. Может лучше тало за 7 лет. РАньше он рандомно иногда не передавал часть объектных файлов на линковку.