Недавно начал учить этот прекрасный язык и возникло несколько вопросов, которых я посчитал нужным создать лучш в болталке, так как это обсуждение. 1 Допустим я выучил язык С, я могу кодить под все системы, или нужно под какую то именно учить? 2 Актуально ли учится кодить под Unix, а именно FreeBSD? 3 Чем отличается программирование под Unix и win? 4 Чем отличаются С, С# и С++? И какой из них самый нормальный считается? 5 Действительно ли можно на С писать драйвера? 6 И последнее, если есть программисты на С под FreeBSD, каким компилятором вы пользуетесь?
Я конечно понимаю что это обсуждение, но лучше бы ты тему начал в соответствующем разделе, так как тут нормальных ответов мало получишь, только порцию флуда.
ты знаешь, по моему опыту, главное начать учить, а там, в процессе, кто его знает куда кривая вывезет.
olbanec-> я понимаю, только у меня книга с уклоном в Unix сторону. А что получается если научусь под Unix пиать, то под Linux не смогу? Я хочу выучить так чтоб не пожелеть в будующем что я его выучил. Да и еще хотел вопрос задать. Вот допустим я хочу для начала переити с уровня эникейщика на админа. Дык многие сказали что плохо, то что я пропустил Perl. Интересно чтобы с cisco работать, можно узать C?
ты здесь был? http://forum.antichat.ru/thread70280.html я вот тоже учу. но все равно тоскую по паскалю. а в процессе обучения и прикладного юзанья ачата начинает нравиться пхп. главное ввязаться в драку). ты пока основы выучишь сам разберешься в какую сторону двигать.
olbanec-> ну тогда будем вместе учить*)) А почему тоскуешь по паскалю? p.s. И ксе таки один вопрос остается актуален.
Там есть различия, но не существенные.. если научишься кодить под фрю, под линукс не особо сложно будет научиться.. А я хотел выучить, да блин не в то время начал.. Какраз подготовка к сессии началась
у каждой систему есть свои особенности си кроссплатформенный язык,си шарп толь вроде под вынь с её фреймворком, си++ обектно ориентированный язык, так что каждый язык под свои задачи. например подвынь то что можно на си++ написать в пару строк на си уйдет много времени, и наоборот. полезно знать и первое и второе. на си и пишут соррь что криво расписал..
т.е. как я понял, в начале программы, идет подключение модуля, какого либо. Допустим #include <stdio.h> А в других ОС модули просто другие. Ну короч примрно понял. А так как во FreeBSD встроена поддержка linux (не по умолчанию, просто при установке предлагает ее установить фря.). Можно учится и кодить под linux. Но тогда как я понял нужно уже не cc компилятор узать, а gcc. В общем, самое главное что учить С стоит. Особенно дали желание учить, эти слова: GALIAFF-> что за вынь? wine?
да, под все. Только код нужно будет(как правило) перекомпилироватьт под каждую отдельную ось. Почитай что такое Переносимость кода и Кроссплатформенность. Си-компиляторы созданы под огромное количество платформ, в том числе и микроконтроллеры(под них как правило только Си-компиляторы или java-платформа). Смотря какую цель преследуешь. Если админить FreeBSD, то наверное будет полезно. Хотя я не работал с фряхой. У меня друг админит фряху на работе - все хочет выучить Си, так что наверное нужно. А так вообще полезно будет знать хотя бы даже для общего развития. Опять же все упирается в цели которые преследуешь. Если хочешь зарабатывать программированием на Си - то рабочих мест мало и это как правило работа с какими-то микроконтроллерами, драйверами, что-такое, админство фри тоже самое . Еще Си применяется при написании антивирусников, фаеров - чего-то такого, и то, по-моему, какие-то небольшие блоки, в основном на С++ пишут. При разработке систем реального времени еще применяется. Вроде ничего не забыл. Мне кажется есть некоторое недопонимание. Си не привязан к какой-то плаформе. Есть стандарт языка Си - последний в 99 году был принят. В нем закреплены синтаксические конструкции и библиотеки функции. Если все требования стандарта выполняются, то компилятор может считаться соответствубщим стандарту этого языка. Большинство компиляторов не соответсвует стандарту на 100%. Хотя различия достаточно мелкие. Наиболее близки вроде gcc и intel'овский компилятор. У каждой ОС есть API - прочитай что это в википедии. У каждой системы он разный. Если его использовать - то код будет выполняться только на этой системе. Так вот этим и отличается программирование под unix от win. Ну еще также отличается средами разработки, компиляторами. GUI еще под каждую систему по-своему программирруется - через разные библиотеки. Хотя есть кросспалформенная библиотека qt. Нормальный в каком плане. Про Си уже писал. На С++ - можно разрабатывать большие проекты - скорость выполения высокая + удобство отладки, тестирования. Почему на Си не разрабатываются большие проекты(во всякмо случае их очень мало), потому что большой код - имеется ввиду несколько десятков тысяч строк - очень сложно отлаживать, плюс времени на написание этого кода уходит очень много. С# - современный - я бы сказал наиболее коммерческий из перечисленных. Позволяет быстро разрабатывать сложные приложения. Совмещает простоту разработки с мощностью. Мэинстрим можно сказать. Можно назвать клоном Java'ы. Два этих языка - можно сказать - самые современные на сегодняшний день - больше всего используются - больше всего коммерческих приложений на них разрабатывается. Поэтому, каждому свое вообщем. фрю не юзал. У меня убунта. Юзаю среду разработки NetBeans. Пишу на Java и C++. P.S. что-то много получилось поправьте пожалуйста, если я в чем то не прав, спасибо.
Forcer-> растроился, думал С самый лучший (т.е. востребованый) язык считается из С++ и С#, но учить все равно буду, потом все равно легче будет php доучить мне. А ответ супер, + кинул, получил всю ту инфу которую хотел узнать, для начала*)))
А ассемблер??? Про java не слыхал, но С транслируется на асм, после чего компилируется. -) (это про мк) ЗЫ Остальное описал норм -) с меня плюсик.
1. Под какую-то именно. Из общего только одинаковый синтаксис. Остальное - API. 2. Актуально. 3. Всем. Абсолютно разное API. 4. Абсолютно разные языки. А считается, что в Москве кур доят. 5. А на чем их еще писать? На бейсике, асме и пхп чтоль?? 6 gcc. Тема закрыта, т.к. все ответы получены.
Хотя открою. Это приимерно насолько же необходимо, как необходимо гинекологу иметь вагину )) на C++? Да ну тя нафиг ) В Java, .NET и еще практически всех языках это удобнее, чем в C++. Если C++ - то советую купить 3 книги: любой учебник(из вменяемых, вроде авторства Дж. либерти), книгу страуструпа и книгу по Qt. Так же сюда еще неплохо было бы джаву добавить(чей клон(.NET) мы уже обсудили). Имхо джава все же будет помощнее своего клона. Но это только мое мнение. И не только мое
nerezus-> возникает вопрос, есть ли различие компиляторов сс и gcc? Можно ли видеть ход компилирования программы в сс?
Джава - это попытки англичан остаться на рынке софта! Говорят что менеджеры Sun летают по компаниям производящим мобилы и втюхивают Симбианы почти за даром, при том что WM лучше на порядок и в цену мобильника входит полновесно! ... о самой джаве не слова плохого не сказал, только констатирую факты!
Да, забыл, конечно же ))). Но по-моему проще выучить один язык Си, чем учить асм под каждую конкретнуюю платформу. Та же фигня с java-платформой - поставил и радуйся. Был в апреле на выставке - Sun Tech Days - там, кроме всего прочего, показывали приборы запрограммированные на java - в них вшита java-плаформа и определенное ПО на java. Видел гироскопы и какую-то штуку - которая держит равновесие - типа качелей - сама раскачивается - и пытается удержать в верхней точке, у нее это получается . Могу дать ссылку на видео вконтакте. Хотя с программированием под мк практически не сталкивался. Максимум что было - в универе программировали на паскале(!!!) какие-то приборы, но там задание было типа нажми кнопку(всмысле напиши пару команд) - получи банан, как впринципе и большинство(хорошо хоть не все) задания в универе. имел ввиду по-сравнению с Си - плюсы ООП . Так то в Java это все на гораздо более высоком уровне . В других языках не знаю - думаю тоже наверное неплохо )). почему англичан? Sun - американская компания. А мелкософт наверное еще и приплачивает! ))) Java ME - это мягко говоря не вся Java. А лишь малая её часть )). Хоть эта часть и более известна широкой публике. Enterprise Java - вот где сила )).