Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Кандидатстване относно професии свързани с програмиране?

Featured Replies

Здравейте!

Може ли да ми дадете повече информация относно професиите свързани с пограмиране? (С какво се занимават програмистите, горе-долу каква е заплатата?)

Благодаря!

Да помисля малко на глас: Докато ти завършиш всичко в отрасъла може да се е променило, а ако и когато завършиш ти няма да си баш програмист, ако ме разбираш какво искам да кажа.

Програмирането влече ли те? Програмирал ли си до сега?

Има програмисти... и програмисти. От програмисти на хардуер и контролери , до уеб девелопъри . програмисти на мобилни приложения, системни програмисти и вероятно куп други видове погромисти, за които не се сещам в момента. Заплатата зависи от нивото - дали си junior ,middle , или senior и ако си например уеб девелопър - дали си бекенд, фронтенд или фул стек.

За начинаещ в програмирането - добър избор е езикът Python. Има много приятен синтаксис, учи на добри практики - например да си подреждаш кода и да пишеш четим код. Препоръчвам питоня ( версия 3 ), защото с него можеш да се концентрираш най-лесно върху логиката на програмирането и писането на код ( а не да се засмислиш - тук имаше ли скоба , двуеточие , etc ). Също така Python се използва в доста широк спектър от технологии.

Нали, напрежение си е да мислиш дали има или не скоба (символ с графично представяне) но не е напрежение да мислиш за идентация.

Питон е гаден език с гнусен синтаксис.

Ако питон е гаден синтаксис, какво  да кажем тогава за Джава-та и Це ++ . Ако не Пайтън и Пърл е добър вариант за начинаещи.

Практически, С е стандартът. Научаването на който и да е c-like език ти дава основа която можеш да ползваш почти на всякъде.

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

Ако ще изместим темата в посока "с какво да започна" трябва да се започне с процедурен език и след това да се мине към ООП. Лично моето мнение е, че за започване трябва да се ползва С или в краен случай паскал.

Не, нe можеш да пишеш процедурно в java, както и не можеш да пишеш ОО в С. И в двата езика можеш да правиш някакви емулации на това за което говориш, но не и да го използваш директно. 

Всъщност, точно защото в С класовете се въвеждат поетапно (след структурите) го прави идеален за начинаещи. 

Java директно те хвърля в ООП с декларация на клас и обработка на изключения. А процесът на обучение включва лафове като "за сега не се притеснявайте какво прави това" .

Я пак... викаш, не мога да си напиша цялата програма в main метода на Java, или да си опиша обект в C? Така ли? ^^

Какво значи да го използвам директно? Процедурно, обектно-ориентирано, функционално, декларативно... това са стилове на програмиране, нищо повече. Това, че пишеш класове не винаги значи, че програмираш обектно-ориентирано.

Защо се опитваш да вкараш разговора в безсмислен спор?

Main е статична функция в контекст на клас (не се притеснявайте за това за сега). Това налага декларацията на всички променливи / функции също да са в статичен контекст (и за това не се притеснявайте). Всички входно/изходни операции (и не само, това си е характеристика на java) хвърлят checked exception което значи, че всяка функция трябва да се декларира така, че да хвърля изключение на горе, защото обработката на изключението първо налага познание за това как се прави и второ обектно ориентирано е (не се притеснявайте за това). В java всичко е указател (с изключение на примитивните) което значи, че основно ще се работи с обекти, и то не просто обекти а указатели (създаване, предаване като аргумент на функция, изтриване за да няма изтичане на памет) (и за това не се притеснявайте). Да не говорим, че цялото стандартно апи е ОО.

Това, че си нацвъкал всичко в main не значи, че си писал процедурно. Значи просто, че изборът на език е бил крайно неудачен (или познанията ти ограничени). И точнобтова преподаване води до изграждане на изключително гадни навици (например празни catch блокове). 

Та това значи, не можеш да го ползваш чисто/директно. Можеш само да направиш някаква мацаница която да наречеш процедурно програмиране но...

Въпросът е дали можеш или не. Дали е грешно или не - няма значение в този контекст.

Колко пъти да се напише НЕ МОЖЕ.

Това за което си се хванал е можеш ли да извикваш самостоятелно функции - отговорът е НЕ - те трябва да се извикат в контекст на клас. Ти държиш на това, че извикването на статични функции декларирани в същия контекст като main е процедурно програмиране, и наистина горе долу изглежда като такова но заблудата пада в момента в който се опиташ да направиш обръщение към стандартното api (да създадеш масив, да прочетеш нещо от конзола, да работиш с файлове...).

Както казах - можеш да направиш някаква емулация но това в никакъв случай няма да е процедурно програмиране.

А ако видиш и контекста на самия офтопик - с какво да ЗАПОЧНЕМ то единственото важно нещо е примерите да са ПРАВИЛНИ. Защото почнеш ли на начинаещ да му пробутваш грешни решения и лоши стилове то той ги попива като гъба а с това го обричаш на провал.

Можем да си спорим цял ден за дефиницията на процедурното програмиране и дали можеш да го приложиш в Java.

В темата не се пита нищо конкретно, за това избягвам да давам препоръки. Ако въпросът беше "Java или Kotlin да използвам за писане на приложения за Android" например, бих се включил.

Прочети ред от файл. Ако го направиш без употребата на обекти значи можем да спорим цял ден наистина. А ако не можеш да го направиш то не виждам за какво изобщо спориш до сега.

Това, че ползваш обекти от API-а не означава, че твоят код е обектно-ориентиран. Имаш грешна представа за ООП.

Когато ползваш ОБЕКТИ то ползваш ООП:

java

public class Sample {
	public static void main(String[] args) {
		System.out.println("Hello World!");
	}
}

C++

void main() { 
	cout << "Hello World!"; 
}

а когато работиш с функции/процедури то програмирането е прецдурно:

C

void main() {
	printf("Hello World!");
}

Точка.

А дали представата ми за ООП е грешна, смятам, че не държиш да чуеш отговора.

Очевидно е, че няма какво да се каже повече по тремата.

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    25%
    Дарени 252.69 EUR от нужните 1,000.00 EUR

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.