Linux за българи: Форуми

Програмиране => Общ форум => Темата е започната от: stoyanovs в Dec 14, 2005, 00:23



Титла: Език за програмиране за начинаещи
Публикувано от: stoyanovs в Dec 14, 2005, 00:23
Здравейте,
Скоро мигрирах на Linux(Ubuntu).
Ще ми се да почна да пиша по някоя и друга програмка.
Дайте идея какъв език е най-подходящ за начинаещи.
Имам опит с VB и Delphi. Не съм се задълбавал в С/С++ и не мисля че ще се оправя.
Познавам и РНР и MySQL, но искам да не е свързано с WEB програмиране.


Титла: Език за програмиране за начинаещи
Публикувано от: mom в Dec 14, 2005, 03:33
Здрасти!

Free Pascal
Lazrus - Нещо като Delphy за всякакви ОС.

За FP има пакети в дебиан-ските хранилища - предполагам, че и в Убунту-вските ще има. За Lazarus няма пакети в Дебиан, но е много вероятно да се намират в Убунту.

Имаше и една интересна среда подобна на VisualBasic и езика е подобен, но в момента не мога да се сетя за името. Има пакети в Дебиан - порови в секцията за програмиране

Абе да ти кажа по мое мнение - PHP + PERL + BASH script и друго му не требе на човек


Титла: Език за програмиране за начинаещи
Публикувано от: kennedy в Dec 14, 2005, 08:38
GAMBAS - нещо като VisualBasic ....


Титла: Език за програмиране за начинаещи
Публикувано от: Lord Bad в Dec 14, 2005, 10:12
Perl - подходящ за много неща, лесен за научаване ако си запознат с фундаменталните концепции на програмирането, забавен за употреба и част от всяка Линукс дистрибуция. Даже мога да ти препоръчам една книга за начинаещи - Learning Perl на Рандал Шварц, има я издадена и в България.


Титла: Език за програмиране за начинаещи
Публикувано от: kbd в Dec 14, 2005, 10:44
Подкрепям Lord_Bad, с добавка на книжката "Програмиране с Perl" на Саймън Казънс - аз поне от тази книжка съм се учил. Издадена е преди няколко години също на български.


Титла: Език за програмиране за начинаещи
Публикувано от: divak в Dec 14, 2005, 11:57
Яко пърл (Perl) за каквото се сетиш по много начини.


Титла: Език за програмиране за начинаещи
Публикувано от: Hapkoc в Dec 14, 2005, 12:19
мда, perl определено е добър избор. книжката, която е препоръчал Lord_Bad наистина си струва, особено за въведение в езика.


Титла: Език за програмиране за начинаещи
Публикувано от: i12805 в Dec 14, 2005, 12:57
здравейте. и аз, като начинаещ ентусиаст, се занимавам с perl и споделям мнението ви, но се питам дали все пак С/С++ не трябва да се знае. може и да греша, но в линукс голяма част от програмите са писани на С и  ако искам да модифицирам свободен сорс код (например) или да разбера как работи програмата трябва да имам познания за езика. как мислите?


Титла: Език за програмиране за начинаещи
Публикувано от: kennedy в Dec 14, 2005, 13:22
perl е средство за мъчение, не е език за програмиране ;) стой надалече от него ако си начинаещ, иначе кошмарите са ти гарантирани.


Титла: Език за програмиране за начинаещи
Публикувано от: в Dec 14, 2005, 13:27
Хора! Учете се да програмирате на истински език! Там където не може без деклариране на променли, където трябва да знаеш предварително типа на променливата, която ще използваш!

Трябва да се научите да заделяте и освобождавате памет. Що за програмист ще е, ако никога не види core dump?

C, Pascal са добри варианти!


Титла: Език за програмиране за начинаещи
Публикувано от: Lord Bad в Dec 14, 2005, 13:37
Синтаксиса на всеки език се усвовоява бързо и лесно. Фундаменталните концепции на програмирането и алгоритмите - те са the real deal. Perl определно не е средство за мъчение, а познания по С никога не са излишни, макар че в наши дни и oсобено в БГ трудно се намира работа като С програмист. use strict; променя доста картинката в Perl...


Титла: Език за програмиране за начинаещи
Публикувано от: zarrro в Dec 14, 2005, 13:58
Определено Perl  е най-добрия избор. :ok:
Или Python.

За Delphi  и Visual Basic няма какво да се каже. Поне не и нещо хубаво  :)


Титла: Език за програмиране за начинаещи
Публикувано от: semionov в Dec 14, 2005, 14:01
Може и на C# или VB.NET със mono - имплементация на .NET за UNIX. Мисля, че е по-близко до това, на което си писал до сега.

www.mono-project.com


Титла: Език за програмиране за начинаещи
Публикувано от: Hapkoc в Dec 14, 2005, 14:43
@don33

Цитат
Хора! Учете се да програмирате на истински език! Там където не може без деклариране на променли, където трябва да знаеш предварително типа на променливата, която ще използваш!


Доста се кефя, когато някой започне да обяснява какво е "истински език за програмиране".

Да не се разбира погрешно - не твърдя, че управлението на паметта е нещо, което човек не трябва да знае, ако има намерение да се занимава с програмиране. Напротив. Просто такива дефиниции за "истинския език за програмиране" ме забавляват.

@kennedy

Цитат
perl е средство за мъчение, не е език за програмиране ;) стой надалече от него ако си начинаещ, иначе кошмарите са ти гарантирани.


Не, не е средство за мъчение. Ако наистина беше такова, как би обяснил популярността му? Може би всички програмисти на perl са мазохисти?

Ако си начинаещ е добре да прочетеш някоя книжка, в която е обяснено ясно кое как се прави и това важи не само за perl. Спестява ти именно гарантираните кошмари.


Титла: Език за програмиране за начинаещи
Публикувано от: в Dec 14, 2005, 17:38
stom si programiral na delphi probwai Kylix no za linux e hubawo chowek da s epozanimawa s c++ (gcc) a moje i QT prosoto kakwoto ti hareswa ... w linuxa ima bogat izbor ....


Титла: Език за програмиране за начинаещи
Публикувано от: в Dec 14, 2005, 17:59
Perl, та perl... защо така пренебрегвате python ? Има защо да му се обърне сериозно Фнимание !


Титла: Език за програмиране за начинаещи
Публикувано от: Hapkoc в Dec 14, 2005, 18:02
Ми като стана дума може и ruby или haskell. :)
Също не са за пренебрегване. Също scheme. :)


Титла: Език за програмиране за начинаещи
Публикувано от: kennedy в Dec 14, 2005, 19:33
Ако искаш ползвай емулатор за Правец82 пуснат през виндузЪ който е пуснат през vmware под линукс ако искаш, важното е да ти е удобно, и да ти свърши работа. аз си пиша само на пхп защото само него си знам (мъничко) дори за неща които през баша ще станат къде по елегантни и по-леки .....


Титла: Език за програмиране за начинаещи
Публикувано от: Emooo в Dec 15, 2005, 00:56
Perl е най-лошия вариант. Научаването на C ти отваря врати към PHP,java,C++,C# и всички езици с C подобен синтаксис които са съвременни модерни. Perl ... за него или добро или нищо само вижте кво означава съкращението и да не коментирам повече. Това е инструмент за писане на скиптове отколкот някакъв език на който можеш да програмираш.


Титла: Език за програмиране за начинаещи
Публикувано от: в Dec 15, 2005, 01:01
Perl е отличен избор за начинаещ!И най-важното има добрa(и евтина) книга на български .
C++ е най-сложния език който би могъл да учиш ,и нищо повече голямо объркване няма да усетиш.
Също така не знам книга на български за програмиране на С/C++ за UNIX/Linux(бихте могли да ме поправите).
С Perl ще се научиш бързо да направиш нещо практично и ще ти стане интересно...
А ако нямаш представа какво е програмиране най-добре Bash скрипт :)
Надявам се съм полезен ...


Титла: Език за програмиране за начинаещи
Публикувано от: в Dec 15, 2005, 01:24
Haskell,Ruby,Scheme ...прекрасно но нямат книга на български,нито една за тези езици ,Python също !

Прочитането на една книжка за С ,не носи никаква практическа полза в Unix С програмирането ;Остава Още една книжка (която пак не знам да я има на български) докосваща  системни извиквания ,синхронизация,сокети ...И в крайна сметка пак нищо няма да можеш да напишеш ,което да вър6и каквото и да е разумно :))


Доколкото програмирането е изразяване на идеи,приликата в синтаксиса на С,Java,C++,PHP не ги прави ни най-малко подобни.
Така че ,с две ръце Perl :)Това не е перфектния език,но е добър избор поради :

1.бързо се учи (буквално няколко дни)
2.Имаме си книга на българсkи
3.прекрасен е за администриране ,автоматизация(по-скоро начинаещия програмист би искал(могъл) да си свали пощата с един скрипт,отколкото да допише модул за Eclipse :)) или OpenOffice
4.Няма да се откаже в борбата със сложните указатели,опции на компилатора и цялостаната  педантичност на С
5.Избягва огромната C++ сложност(кажете ми по-сложен език в момента от C++ ,Пролог не се брой той е извратен )
6.Няма да се "забие" в обектно-ориентираното Java програмиране ,с което дори Hello world не изглежда близо до ума
7.Рано или късно всеки ,който ползва Unix научава perl :)

Разбира се от академична гледна точка perl не е добра идея да се преподава на начинаещ(първокурсник) ,но все пак тук говорим за самообучение ...
Това е от мен.


Титла: Език за програмиране за начинаещи
Публикувано от: Hapkoc в Dec 15, 2005, 10:39
Цитат
Haskell,Ruby,Scheme ...прекрасно но нямат книга на български,нито една за тези езици ,Python също !


Така е. Принципно всеки, който има намерение да се занимава с програмиране е задължен да се оправя с английска документация, но все пак за човек, който сега започва, ще е доста по-лесно ако има литература на български.

Поздрави


Титла: Език за програмиране за начинаещи
Публикувано от: semionov в Dec 15, 2005, 10:55
Айде стига с тоя Perl вече. Прекалено ревностно го защитавате, все едно че е единствения език, или най-универсалния, а изобщо не е така. Ако беше толкова як нямаше да има нужда от реклама и натрапване. Езика си е за системна администрация и извличане на текст - скриптове и нищо повече.

За мене Perl е полезно да знаеш като допълнителен език, който ти помага да навържеш нещо просто, което със C/C++ или шел би отнело повече време, или би станало по-грозно. Т.е. само полезен инструмент, но не и основен език. За писане на по-големи и сложни приложения си има по-подходящи езици.

На C-дериватите се пише по-сложно и с малко повечко думи, което наистина е кофти за "Hello World", но са универсални и в дългосрочен план ти се отплащат.

Правилният отговор на въпроса "кой език да науча/ползвам" не е този език или онзи език, а зависи от задачата която трябва да се реши и изискванията към решението. Мисля че ако някой иска тепърва да се учи да програмира, Perl е загуба на време. Мисля че само след като знаеш C и C++ можеш да се научиш да мислиш като програмист и да видиш предимствата на Perl. Но обратното май не е вярно - ако научиш първо Perl придобиваш грешното мнение, че програмираш и те мързи да учиш по-сложни езици и ще забиеш само в скриптове.


Титла: Език за програмиране за начинаещи
Публикувано от: в Dec 15, 2005, 11:31
A, ako iskash da se zanimash s programirane v dulgosro4en plan, nai dobre napravo na C++ da se hvurlish. I ne minavai prez procedurnite ezici, za6toto takiva vredni navici 6te si izgradish, 4e posle s godini 6te trqbva da gi borish, kato men.


Титла: Език за програмиране за начинаещи
Публикувано от: в Dec 15, 2005, 11:32
най-добрия език за начинаещ програмист е Smalltalk. Замислен е специално, за да е разбираем за деца и начинаещи. Има свободна реализация, която се казва Squeak. виж:
www.squeak.org/
www.squeakland.org/
Smalltakin


Титла: Език за програмиране за начинаещи
Публикувано от: Lord Bad в Dec 15, 2005, 11:43
Цитат
A, ako iskash da se zanimash s programirane v dulgosro4en plan, nai dobre napravo na C++ da se hvurlish. I ne minavai prez procedurnite ezici, za6toto takiva vredni navici 6te si izgradish, 4e posle s godini 6te trqbva da gi borish, kato men.

Чак пък вредни... И в никакъв случай не почвай да учиш С++, без да си навлязтл в С преди това. А на коментара че Пърл бил само за системна администрация и текстообратка ще отговоря че на Пърл може да се направят доста повече неща - един поглед в CPAN дава идея...


Титла: Език за програмиране за начинаещи
Публикувано от: Hapkoc в Dec 15, 2005, 12:07
Цитат
A, ako iskash da se zanimash s programirane v dulgosro4en plan, nai dobre napravo na C++ da se hvurlish


С това май не съм много съгласен. В C++ има един куп възможности, които са способни доста сериозно да объркат човек, който не се е занимавал с програмиране. Освен това си мисля, че наистина е добре преди C++ да имаш понятие от C.


Титла: Език за програмиране за начинаещи
Публикувано от: v_badev в Dec 15, 2005, 12:08
Цитат (Guest @ Дек. 15 2005,11:31)
I ne minavai prez procedurnite ezici, za6toto takiva vredni navici 6te si izgradish, 4e posle s godini 6te trqbva da gi borish, kato men.

C++ E процедурен език.


Титла: Език за програмиране за начинаещи
Публикувано от: Lord Bad в Dec 15, 2005, 12:42
Смятам че структурен е по-правилната дума, но и ти разбира се си прав. Предполагам че оня пич имаше предвид че каквото не е обектно е вредно...


Титла: Език за програмиране за начинаещи
Публикувано от: E_Petkov в Dec 17, 2005, 13:29
Абе пич, пиши на каквото искаш.

Pascal/Delphi, С/С++, Java, Perl, PHP, Python, Haskell, Ruby...намират се и разни други екзотики. Ако искаш може и във Fortran да се забиеш. Важното е да цъкаш нещо.   :ok:


Титла: Език за програмиране за начинаещи
Публикувано от: в Dec 17, 2005, 13:46
Fortran не е лошо като идея да почне от там!Хаха но може и с Ada95 да опита там е истински интерено както и Fortranа де!А ако някой има книга или .pdf на Ada95 при това на български с удоволствие може да ми каже,че ми трябва!


Титла: Език за програмиране за начинаещи
Публикувано от: в Dec 29, 2005, 01:32
Хора, пърл му е майката :)
можеш да пишеш на него почти всичко:
1. скриптове за системна администрация
2. енджини на сайтове - този сайт и още около 50% от сайтовете в уеб са на перл
3. програми с прафичен интерфейс (за пример инсталаторът на Мандрива е писан на пърл)
4. всякакви конзолни програми - парсъри (на С стават мноооооооооооооооогоооо по-големи - заради регулярните изрази), сървиси... Още един пример - automake i autoconf са писани на ... perl :) Отидете в /usr/bin и пишете file * | grep -i perl и ще видите колко много познати програмки са писани на пърл :)

След това учиш С и т.н :)


Титла: Език за програмиране за начинаещи
Публикувано от: MetalIvo в Jan 04, 2006, 03:23
JAVA
C++
C


Титла: Език за програмиране за начинаещи
Публикувано от: в Jan 04, 2006, 04:33
Съгласен съм с MetalIvo !

Почваме от Java - чисто обектно ориентиран език ("всичко в Java е обект") и научаваме обектно ориентирания начин на програмиране.
След това прехвърляне към C++, където вече се сблъскваме и с остатъци от "остарели" концепции за процедурно програмиране, и най-накрая C - без обекти.

Идеята е, че преиначаването на начина на мислене от процедурно към обектно ориентирано програмиране, както и обратното е труден процес. Но, при условие, че тенденциите са използване предимно на ОО езици, то по-добре е да имаме за "матерен" език, такъв, който е ОО език.

За поддръжниците на Perl - може би вече от две години не съм писал на нищо друго освен Perl и PHP (bash също). Но базата все пак ми е C/C++ :)
Perl наистина е страхотен език за програмиране, но е нужно да имаш много добра начална база, за да са ясни фундаменталните принципи в програмирането. И мисля, че С/С++ дава тази база.

Ако човекът иска да стане "super-ultra-max" в програмирането, то може би е добре да стигне до дъното (ако щете и асемблер ;) ) - прим. преди време бях разглеждал имплемнтация на обектното програмиране в чисто C - със всичките му таблици на виртуалните методи и т.н. Бих казал, че доста ми се изясни картинката :). Но ... такива съвети ги оставям на баш специалистите :)


Титла: Език за програмиране за начинаещи
Публикувано от: Hapkoc в Jan 04, 2006, 13:24
VladSun, хич не съм съгласен, че трябва първо с Java да се захваща човек. Все си мисля, че обектно-ориентираното програмиране за човек без опит е нещо адски абстрактно и много трудно се проумява. Съдя по наблюденията си върху колегите от университета, които нямат опит с програмиране и курса по Java им е пълна мъгла...

Също да добавя - строго погледнато Java не е чисто обектно-ориентиран език. Ruby е такъв, доколкото знам и Smalltalk.


Титла: Език за програмиране за начинаещи
Публикувано от: rip_darkman в Jan 04, 2006, 14:07
Хаха :)
Хора,напишете книга "Как да стана програмист" ;) ,където описвате от кой език точно трябва да почне един youth линуксаджия и с кой да завърши.Btw сигурен съм,че убихте мерака на момчето да се занимава с програмиране под Linux  :)  :)  :)
А ето и моето мнение по въпроса - който не е минал през трудното няма как да оцени лесното.


Титла: Език за програмиране за начинаещи
Публикувано от: JOKe в Jan 04, 2006, 15:55
toyanovs сега въпроса е дали искаш да го учиш за кеф или искаш да го учиш за да работиш или искаш да го учиш за да помагаш на някоя дистрибуция

ако искаш да го учиш за кеф виж езици като perl/python/php евентуално с последното би имал някое и друго саитче и би спечелил някои друг лев.

ако искаш да го учиш за да помагаш на някоя дистрибуция земи хвани C/C++ за максимум месец след което почваи GTK или QT за мен 2рото е доста по лесно за писане.

ако искаш да си търсиш работа с това което си научил в смисъл да си търсиш работа в БГ има 2 възможности
едната е фани C ама на ниско ниво виж как се пишат сякви глупости има баиа туториалс
другото е хвани Java щото ша ти върви и на линукс и на win и има много фирми в българия в който биха те зели дори и с средни познания в областа.


Титла: Език за програмиране за начинаещи
Публикувано от: MetalIvo в Jan 04, 2006, 18:00
Аз започнах с Java , много отдавна когато започчнах да се занимавам с програмиране, ако искаш чисто обектно ориентиран език за пеограмиране ( въпреки че не разбирам точно какво искаш да кажеш с това ) се хвани с SMALLTALK, всеки език е богатство
в моемента учим в унито VHDL и Assembler ( концепции ) и микропрограмиране - всичко това е част от техническата информатика, в първия семестър правихме Java напълно процудиално - Алгоритми, втори семестър правихме ООП с Java а аз си се занимавах у нас с C, и когато ми остае време имам на идея да попрехвърля C++ имам 2 години на разположение минимум преди да завърша :) има много други интесесни концепции

Всичко зависи от ывоята подготовка, и мотивация, защо искаш изобщо да се занимаваш с програмиране

в Миналото:
а в зората на съзнанието 1997 - 1998 се занимавах с HTML, след това на мода дойдоха чатове и подобни ( смърт за всяка мисъл - писах си скриптчета и така ), след това се увлякох повече по дезайн за уеб - Java Script - не стигнах до никаде :) ... . .. ...


Титла: Език за програмиране за начинаещи
Публикувано от: JOKe в Jan 04, 2006, 21:57
дам java е добро определено.
Аз в миналото започнах да се занимавам с HTML/JavaScript / Flash 5 по онова време , но скоро се зарибих по други неща започнах да уча C/C++ в университета минаваики през основи / структури от данни и ооп после реших да продължа с MFC но като видях каква боза е се отказах хванах Java запознах се как се пишат десктоп програми / web apps запознах се с някой фрамеwork kato Struts и JSF ( уникално добри са ) евентуално през това време в унито учих ASP 3.0 / C# .net WinForms Apps / C# .net Разпределени приложения , видях що е то Асемблер що е то Пролог и Лисп даже :)
и все пак моят съвет е 1во реши за какво ще учиш ако е за пари хвашаи Java || C# хем са по лесни хем има повече търсене


Титла: Език за програмиране за начинаещи
Публикувано от: MetalIvo в Jan 04, 2006, 23:52
хехе Java || c#

:)
Java && C#
 бих казал за пари :). На Java хубавото е платформената независимост и това че е ОО :)
Въпреки че намирам някой неща за не логични във Java 5 ... hint примитивни типове данни.

Когато написах първия си аплет се влюбих в този език, защото това поне доколкото знам е възможно само с Java пък и всичките приложения за мобилни бази данни ... и така ( това не съм се занимавал, но един приятел прави проект по него та му прочетох работата ) ...
но света не Java да не е слънце да угрее на всякъде .. :p, пък може и да е .... знае ли се ....


Титла: Език за програмиране за начинаещи
Публикувано от: Diabolic_Soul в Jan 17, 2006, 01:30
Аз също започнах с Java...... просто преди две години приятел ми го предложи като най - лесния език за ООП.
Вече е с подобрена бързани и усъвършенствани пакети(библиотеки), спокойно може да му вярвате.
Незнам дали бих го препоръчал за първи език. Въпреки, че ще въведе бъдещия програмист в света на ООП по лек начин, си остава сложен език.

Може би Паскал >> Java >> C++  и като допълнение C#, C.
Това ще ви направи "надежден" програмист, който бих наел. Но разбира се това не включва Интернет разработки.


Титла: Език за програмиране за начинаещи
Публикувано от: в Jan 17, 2006, 08:56
Python e dobar start - prost i efektiven.
Dokumentacia na balgarski:
http://python-bg.sourceforge.net/
(malko e stara no e dobar start).
Inache "learning curve"
ASM --> C- -> C++ -->Java-->Python