Loading...
IvayloV avatar IvayloV -14 Точки

Как се подготвяте? Дайте съвети!

Здравейте.

Компютрите са ми слабост от дете, но с програмирането едва сега се запознавам.

Който може, да ми даде съвет за метода на подготовка и учене, когато субекта е пълен новак?

За сега чета книгата на Наков и гледам всяка лекция по два пъти - веднъж на един преподавател и втори път на друг (всеки има нещо интересно да добави от себе си).

Освен това се опитвам да пиша код по 6-7 часа на ден - главно да реша задачите от домашните.
Определено на моменти изпадам в затруднения и се налага да поглеждам как са ги решили колеги преди мене, защото в Гугъл рядко намирам някой страничен сайт който да ми помогне извън СофтУни и Терелик.

(MDSN library си е направо жив хаус. Всеки път като влезна там, съжелявам след това.)
Съставих и моя игра - доста простичка е. Главно с if и else командите я написах.

Та има ли още източници от които да се готвя и какви са вашите методи?

Имам амбицията да стана един добър програмист някой ден?

Савети, източиници, туториали ще бъдат повече от добре дошли !

1
Общи приказки
RoYaL avatar RoYaL Trainer 6849 Точки

Здравей,

Ако приемаш програмирането като учебен предмет, както примерно си приемал биологията да речем в училище, то най-вероятно няма да ти се получи.

MSDN library не е жив хаус. Това не е туториал. Това е техническа документация за хора, които са запознати с програмирането като концепция. Които знаят какво е return type на метод например и какво е method overloading.

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

Например отваряш String.Format в MSDN и там пише String.Format (System). Първо трябва да разбереш какво е това в скобите, а именно namespace.

После срещаш следващото интересно нещо

Overloaded method syntax

For additional guidance on choosing an overload, see Which method do I call?

String String.Format(String format , Object arg0 )

String String.Format(String format , Object arg0 , Object arg1 )

 

И си задаваш въпроса, защо по дяволите виждам два пъти стринг преди Format и защо аджеба го има написано на няколко реда това нещо.

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

И чак когато разбереш тези неща, без да си задаваш излишни въпроси, MSDN lib ще е малко повече песен, от колкото хаус.

 

С книжки и решаване на задачи ще отработиш логика и това е може би нещото, което се иска от 1вото ниво в СофтУни. Ако се вслушваш детайлно в Наков, ще ти направи впечатление, кога обяснява, че някои неща са фундамент и ще ги срещнете навсякъде. Например IF-ELSE конструкциите.

Но до тук. Това няма да те направи добър програмист. Ще отработиш логическото си мислене и ще разбереш основите. Такива хора бол.

Тук идва моментът да придобиеш такава страст към програмирането, за каквото говориш че си имал към компютрите. Да стане изкуство за теб. И когато ти носи еднакво голямо удоволствие - крайният резултат (програмата), така и кода, който си написал (лесната му четимост, иноваторските решения и т.н.) то тогава разбираш, че си минал в етапа, цитирам, "един добър програмист някой ден".

Туториали няма да ти помогнат. Това, което ще ти препоръчам най-горещо е да се регистрираш в Stackoverflow. Да започнеш да пишеш там, не само да четеш. Когато видиш проблем на някой човек, да се опиташ да му го решиш чрез отговор. Без значение дали знаеш отговора предварително. Ако не го знаеш - супер. Така се сблъскваш по-рано във времето, с проблем, с който най-вероятно ще се сблъскаш ти сам някога, ровейки се из туториали и книжки. Общо взето е нещо като домашните - все едно са ти дали задание на теб, което още не знаеш как ще решиш, но ще го рисърчнеш. Само, че в по-голям мащаб. И в пъти по-полезно от домашните. Разгледай и most-rated хората там. Може да ги столкваш по отговорите. Обикновено пишат гениални такива. Намери им гитхъб профилите и т.н. и започни да им четеш кода, който пишат. Copycat фазата е много важна.

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

 

11
IvayloV avatar IvayloV -14 Точки

Мерси. Има доста логика в това което казваш.

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

Благодаря за съветите!

0
daniel_tsonkov avatar daniel_tsonkov 32 Точки

Много добре казано. Ще пробвам тази идея веднага :)

0
dannyboyukliev avatar dannyboyukliev 15 Точки

Насърчавам те да продължаваш да се опитваш и тези 6,7 часа на ден, в които се подготвяш не са напразни. И недей да се лимитираш само до теория и задачки, а прилагай това, което вече знаеш, в проекти, като например тази игра, която си направил. Малко по-малко те ще стават по-сложни и по-сложни и в един момент ще разбереш колко много си научил със собствена подготовка. Програмирането е занаят и трябва да се научиш да правиш нещо, а не да се учиш само как да го правиш. 

И все пак тези задачки, които правиш в СофтУни са важни, за да развият алгоритмичното мислене в теб. А това е основа, върху която ще градиш по-нататъчните си умения на програмист.

Важно е да разбереш какво най-много те влече. Например, когато аз започнах да се занимавам с програмиране, установих, че искам да се занимавам с разработване на приложения за телефони. Бях чел малко от Introduction to Java Programming, и това беше основа, без която нямаше да мога да навлеза, но най-много ми помогнаха клипчетата за Android Development на The New Boston. Изгледал съм почти всички негови туториали и постепенно започнах да си правя собствени приложения за телефона си. А това ме караше да търся и от други места и така научих как да ползвам Stack Overflow и другите подобни сайтове. Т.е. аз ползвах метода "блъскай си главата, за да научиш".

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

5
19/09/2014 12:24:35
bsdemon avatar bsdemon 348 Точки

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

  • домашните си усложнявай малко, добавяй си допълнителни неща или си измисляй малко по сложни задачи, има и в нет-а.
  • опитвай се да решаваш задачите със звездички.
  • задачите от предходните изпити задължително ги реши.
  • отборните проекти са много полезни също.
  • отдели си специално време за да научиш регулярните изрази.
  • ако учиш от книга пиши целия сорс от примерите и го допълвай с нови неща.
  • като цяло в интернет има всичко, само че трябва да намериш това което ти трябва. Много е важно да знаеш какво да подадеш на Google за търсене.
  • повечето неща ще намериш в stackoverflow, специално за HTML,CSS и дори JavaScript и PHP ползвай И w3schools
  • и не на последно място, всичкия код който гледаш от някъде, се опитай да го разбереш и тогава го пиши.
  • и кодене, кодене... колкото време имаш и задължителното "блъскане на главата в стената" :) и след време MSDN няма да ти е такъв хаус.
  • ако си редовно, коментирай с колеги задачите и си ги обяснявайте, кое, защо, как и как е по-правилно. 

Надявам се да съм ти помогнал.

3
RoYaL avatar RoYaL Trainer 6849 Точки

О далеч не се опитвам да коментирам прогреса на w3schools. Факт е, че има такъв, факт е че са го казали освен в тикета, който си ликнал, така и във w3fools сайта. Но все още не е нещо, от което може да научиш повече от beginning-а - не учи на нищо хубаво натам. И това всъщност го пише във w3fools, което е главното върху което бих наблегнал

 

For many beginners, W3Schools has structured tutorials and playgrounds that offer a decent learning experience. However, it would be a mistake to continue your education without learning from more reputable sources, so when you're ready to level up, move on.

1
IvayloV avatar IvayloV -14 Точки

Thanks dudes!

Точно такива съвети исках. Технологиите като цяло са ми страст ( както се вижда от аватара).

Точно такива съвети търсех. Трябва още да си разсширя хоризоните значи!

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

Ще е голямо главоблъскане, но съм се подготвил психически за това!

0
Roumen avatar Roumen 127 Точки

Освен отличните съвети по-горе от личен опит мога да споделя още нещо полезно, преди изпити винаги си прави "тренировъчен изпит" в къщи. Отдели няколко часа колкото би продължил предстоящия ти изпит, разпечатай си някой негов предишен вариянт, който не си решавал преди това и започни да решаваш задачите като си представяш, че това е реален изпит. Разбира се спазвай и съответните правилата за него, без външна помощ (можеш само да четеш/търсиш), без да гледаш авторските решения и тестовете, които ти гърмят (по време на изпит нямаш достъп до тях) и тн.

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

7
19/09/2014 20:10:07
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.