Մեջբերում _DEATH_-ի խոսքերից Նայել գրառումը
Ինչ կարիք կա հեծանիվ հայտանագործելու? Python-ով ես չեմ գրի վեբսայթերի որոնման ու ինդեքսավորման համակարգ, քանի որ կա շատ օպտիմալ գրված մոդուլ C++_ով Պիթոնի համար, որը այսինքն օգտագործելու դեպքում նույն արագոգործությունն ա ապահովում: Մնում ա էտ մոդուլը օգտագործել: Իմ ասածը ինչն ա, Պիթոնը շատ հարուս տ բազա ունի C++_ով գրված օպտիմալ մոդուլների, որոնցով շատ հանգիստ կարելի ա մի քանի րոպեում ծրագիր գրել, լրիվ օրինական, շատ ավելի ապահով, անսխալ, արագագործությամբ գրեթե չզիճող, քան թե ես իմ թանկագին ժամանակը վատնեի սիպիպիով հեծանիվ հայտնագործեի? Չէ որ հենց սիպիպիյի մասին նույն բանն էին ասում, պետք ա ստեղծել սիստեմավորված կլասսների բազա, սակայն ոչ մի բան չստացվեց, խառը եսիմ ինչքան պետք ա ման գաս, որ քո ուզած բանը գտնես, իսկ Պիթոնի դեպքում հենց արդեն ինտեռպռետատորի հետ գրեթե բոլոր հաճախակի պետք եկող մոդուլները կան: Էլ չեմ ասում ներսարված բաների մասին, տիպերի մեթոդները էնքան շատ են ու հարուստ, որ օրինակ վինդոուսի համար ծրագիր գրելուց ֆունկցիա մեկ-երկու հատ ա պետք լինում, դաս ընդհանրապես պետք չի լինում, էտ նույն ծրագիրը գրում եմ սիպիպյով քսան հատ ֆունկցիա, հինգ հատ դաս: Պիթոնի ծրագրի կոդի չափը 2 կբ, C++_ինը 25 կբ: Արագագործության տարբերություն գրեթե չեմ զգում: Մի թե տարբերությունը ահռելի չի: Երկուսն էլ ընդհանուր ուղվածության ծրագրավորման լեզու են:
Ու դու ոնց էիր ուզում 2կբ-ի ու 25կբ-ի միջև արագագործության տարբերություն տեսնել? Պրոբլեմը էն ա, որ դու ծրագրավորումը պատկերացնում ես 25կբ-ի, 5 կլասի ու 20 ֆունկցիայի սահմաններում ինչ-որ բան: Բայց դա ծրագիր չի, դա տնային աշխատանք ա կամ առավելագույնը կուրսային աշխատանք: Իրական լուրջ ծրագիրը այն է, որի կոդը հասնում է 2 միլիոն տողի ու ծավալով գերազանցում է 100 մբ-ը ու որը իր մեջ պարունակում է 200 հազարից ավել կլաս: Ու սա միայն մաքուր կոդը` չհաշված լրացուցիչ գրադարանները, որոնք օգտագործվում են ծրագրում: Նման ծրագրի կոմպիլացիան տևում է մինիմում 1 ժամ: Հիմա, դու ոնց ես պատկերացնում նման ծրագրի իրականացումը որևէ ինտերպրետատորով? Ենթադրենք ինչ-որ հրաշքով դու կարողացար գրել նման մի բան: Ենթադրենք կլասներ չօգտագործեցիր ու պիթոնի ֆունկցիաներով այնուամենայնիվ գրեցիր: Նախ, ես համոզված եմ, որ կոդ գրելու ես ոչ պակաս, քան սիպիպիով, հետո քո օգտագործած ժամանակը մինիմում կրկնակի ավել ա լինելու, քան եթե գրեիր սիպիպիով և երրորդը քո գրածը ստարտ կլինի շատ դանդաղ, քանի որ եթե սիպիպի համապատասխան կոդը կոմպիլացիա է արվում 1 ժամում, ապա քո ինտերպրետատորը էդքան կոդը պետք ա ինտերպրետացիա անի, այսինքն քո ծրագիրը աշխատացնելը կտևի մոտ 1 ժամ, հլա չեմ ասում, որ արդեն ստարտ լինելուց հետո այն կաշխատի չափազանց դանդաղ ու կօգտագործի կրկնակի ավելի հիշողություն: Այսինքն ավելի լավ ա չգրեիր:
Էնպես որ, եթե դու մտադիր ես քո գրած ծրագրերում սահմանափակվել 5 կլասով ու 20 ֆունկցիայով, ապա շատ բարի, ավելի լավ ա օգտագործես պիթոն, բայց եթե ինչ-որ մեկը փորձում ա ավելի ռեալ բան գրի, որը բացի իրենից նաև ուրիշ մեկին օգուտ կտա, ապա մի փորձիր նրան համոզել, թե պիթոնը ավելի լավն ա, որովհետև դա տենց չի ու չի կարող տենց լինել: