Վրիպածին շարահյուսության մասին

Վրիպածին շարահյուսություն՝ շարահյուսություն, որը ստեղծում է վրիպելու հավանականություն։ Վրիպակներ ասելով նկատի ունեմ ծրագրավորման bug-երը։ Ծրագրավորման լեզուներում կան շարահյուսորեն թույլատրված կառուցվածքներ, որոնք սակայն վրիպածին են։ Մի երկու օրինակ ցույց տամ, որոնց վրա մտածելիս հանգեցի այս մտքին։ Օրինակ առաջին՝ SQL Այս օրինակում երկու խնդիր կա, առաջին խնդիրը այն է, որ “other field”-ը երկու բառից է կազմված հետևաբար պիտի ներառվի ապաթարցի նշանների մեջ։ Երկրորդ խնդիրը այն է, որ order բառը sql-ում ռեզերվ արված բառ է, հետևաբար այն նույնպես պիտի ներառվի ապաթարցների մեջ։ Մի փոքր ձևափոխելով կարող ենք ստանալ շարահյուսորեն ճիշտ, սակայն դեռևս վրիպածին կոդ Ինչու՞ եմ ասում, որ սա դեռ վրիպածին է, այն պատճառով, որ սովորողները պիտի մի քանի կանոն հիշեն միայն մի կանոնի փոխարեն։ Լեզվի հետ առաջին ծանոթույթյան ժամանակ անհրաժեշտ է բացատրել ու ասել ամենաընդհանուր կանոնը, որը կփոքրացնի վրիպակների առաջացման հավանականությունը։ Միակ կանոնը, որը պետք է ասել, դա այն է․ որ դաշտերի և աղյուսակների աննունները “ՄԻՇՏ” պիտի դրվեն ապաթարցի նշանների մեջ, սա իհարկե

Վեբ ծրագրավորման և էջատման վարժություններ

Մի հատ առանձին վեբ֊նախագիծ ունեի, որտեղ տեղադրում էի ծրագրավորման և էջատման վարժություններ։ Հիմա բոլոր վարժությունները միաձուլել եմ բլոգիս հետ։ Պատճառներից մեկը այն է, որ վարժությունների կայքը wordpress.com-ի վրա էր, ինչը  չէր տալիս նոր ֆունկցիոնալ ավելացնելու կամ փոփոխելու հնարավորություններ․ այստեղ ինձ համար ավելի հարմար կլինի։ Այնպես որ, կրթվեք, վարժվեք ու տենց ․․․ Կարող եք սկսել այստեղից՝ http://ablog.gratun.am/development_exercises/ Դբա Լավը ։Ճ

Ինչպես են սովորում ծրագրավորել | Բար Քեմփ Երևան 2016

Ահագին ժամանակ առաջ այսպիսի մի հետազոտություն էի նախաձեռնել։ Այս բարքեմփը դարձավ պատճառ, որ հետազոտության մեջ ինչ որ մի արդյունքի գամ ու ներկայացնեմ հետաքրքիր կետերը։

[Վորդպրես] Ինչպես պայմանականորեն աշխատեցնել փլագինները

Վորդպրեսում հաճախ արագագործությունը օպտիմալացնելիս հարկ է լինում որոշակի ոճաթերթեր և սքրիփթներ անջատել այն էջերում, որտեղ դրանք պետք չէն։ Խնդիրը նրանում է, որ բազմաթիվ փլագիններ իրենց ոճաթերթերը և սքրիփթները խցուկմ են որտեղ պատահի, անկախ նրանից, տվյալ էջում դրանք անհրաժեշտ են , թե ոչ։ Օրինակ SyntaxHighlighter փլագինը ավելացնում է  3 հատ ոճաթերթ և 3 հատ սքրիփթային ֆայլ, մի բան էլ հենց html-ի մեջ գրում է որոշակի քանակությամբ javascript: Իհարկե կարելի է wp_dequeue_style և wp_dequeue_script ֆունկցիաների միջոցով կառավարել թե որ էջում ինչ ոճեր և սքրիփթներ բեռնվեն, սակայն դա ավելի երկար աշխատանք է, քան միանգամից  այդ էջերում փլագինի անջատումը ։ Դա կարելի է անել մոտավորապես այսպես։ add_filter( 'option_active_plugins', 'disable_syntax_plugin' ); function disable_syntax_plugin($plugins){ if(!is_admin()) { if(այստեղ գրել անջատելու պայմանը) { $key = array_search( 'wp-syntaxhighlighter/wp-syntaxhighlighter.php' , $plugins ); if ( false !== $key ) { unset( $plugins[$key] ); } } } return $plugins; } պայմանը կարելի է կազմակերպել տարբեր եղանակներով,  էջի համարով, որևէ custom field-ով կամ բաժնի համարով ․․․ Դբա

Ծրագրավորում․ Ինչ ծրագրավորման լեզու սովորել առաջինը

Բարի լույս․ Շատերը ուզում են ծրագրավորում սովորել։ Դա նորմալ աշխատանքի հնարավորություն  է, շատ հետաքրքիր ու լավ վարձատրվող։ Սակայն որքան էլ շատ են ուսումնական կենտրոնները, առցանց ռեսուրսները ու գրքերը, սկսնակները դժվարանում են ընտել առաջին ծրագրավորման լեզուն։ Իրականում առաջին լեզվի և տեխնոլոգիական ուղղության ընտրությունը որոշվում է որևէ կոմպետենտ մարդու կողմից տրված խորհրդով։ Հիմա ես ուզում եմ իմ փայ խորհուրդը տալ, թե իմ կարծիքով (ու ոչ միայն իմ), որ լեզուն արժե սովորել որպես առաջին լեզու։ Իհարկե պետք է հասկանալ, որ միայն ծրագրավորման լեզվի իմացությունը մարդուն դեռ ծրագրավորղ չի դարձնում, այլ բաներ էլ է պետք իմանալ, տենց computer science-ոտ բաներ։ Տվյալների տիպեր և կառուցվածքներ, ալգորիթմներ, նախագծման կաղապարներ, մաթեմատիկա և այլն, սակայն այս բոլորը ուսումնասիրելու համար գոնե մեկ ծրագրավորման լեզու նախապես իմանալը շատ օգտակար է, որոշ դեպքերում նաև պարտադիր է։ Մարդիկ այսպիսի ուղեցույց են ստեղծել, որը օգնում է կողմնորոշվել լեզվի ընտրության մեջ։ Սեղմեք պատկերին ավելի մեծ տարբերակը տեսնելու համար։ Նայեք, հետո չմոռանաք հետ գալ ։) Իհարկե

Ծրագրավորում․ Ուսումնական ՀՏՀ (FAQ)

Հ։ Ինչների՞ս են պետք բոլոր այս for-երը, if-երը function-նները և այլն, առանց սրանց կայք չէնք կարող պատրաստել Պ․  առանց դրանց կայք սարքող կդառնաք, բայց ծրագրավորող՝ ոչ Հ․ այսինչ բանը ո՞ր ֆունկցիայով անեմ Պ․ ինքդ գտիր այդպիսի ֆունկցիա, եթե չկա` ստեղծիր այն, ծրագրավորումը բոլոր հնարավոր ֆունկցիաների անգիր իմացությունը չի Հ․ իմ գրած կոդը ինչու՞ չի աշխատում Պ․ նայիր սխալներիդ, կոնսոլը (error reporting-ը միացրու ․․․) բաց պահիր, ի՞նչ սխալ կա Հ․ մի  բան է գրած է բայց չէմ հասկանում ինչ է Պ․ google translate կա դրա համար Հ․ հասկացա սխալը, բայց չէմ գտնում որտեղ է Պ․ կողքը գրում է թե որ տողում է Հ․ կոնսոլում սխալ չկա , բայց մեկ է, չի աշխատում 🙁 Պ․ հիմա արդեն տրամաբանական սխալ ունես, նայիր ինչ ես գրել Հ․ հիմարը չի անում այն ինչ ինձ պետք է Պ․ համակարգիչը հիմար է, մարդիկ, հատկապես ծրագրավորողներն են այն խելոք դարձում, եթե կոդդ հիմարություն է անում, ապա ո՞վ է իրական հիմարը ։) 😀 Հ․ բայց

Ծրագրավորում․ Ինքնուրույնություն

Ծրագրավորում սովորելիս ամենակարևոր անձնական հատկությունը ինքուրույնությունն է։ Ոչ մեկը, երբեք, ոչ մի գիրք կամ դասընթաց չի կարող քեզ սովորեցնել ծրագրավորել, ծրագրավորումը պրակտիկա է, որը միայն ինքուրույն աշխատանքով է ապահովում։ Եթե դու 48 դասաժամից հետո չէս կարողանում ինքնուրույն գտնել շարահյուսության սխալներդ (syntax errors) ապա դու իզուր ես վատնել քո ժամանակը ․․․ Եթե դու 48 ժամից հետո դեռ հարցնում ես էսինչ ֆունկցիան ինչ է անում, ապա դու ոչ թե 48 ժամն ես իզուր վատնել այլև կյանքիդ մի ահագին մասը։ Սա երևի դպրոցի ու ինստիտուտի հետևանքն է, երբ մարդիկ սովոր են ժամերով դասախոսություններ լսել, ամեն բան “ծամում ու տալիս” են իրենց, տպավորություն է ստեղծվում, որ հասկացան այն ինչն ասվել է։ Սակայն իրականում երբ անհրաժեշտ է դրա հետ մի բան անել, չգիտեն ինչ անեն, որ կողմից սկսեն։ Դասագրիքը, թրեյները, դասախոսը, վիդեոն և այլն կարող են միայն ուղղություն ցույց տալ, սակայն գիտելիքը կարողությունը ձևավորվում է միայն ինքնուրույն աշխատանքով։ Եթե որևէ բան մոռացել ես , ինքուրույն գտիր , հետո