11-07-2012, 04:02 AM
کارکرد زبان در انگیزش اندیشه
نکته مهندی[sup][aname=rpa9ae4][[/aname][anchor=pa9ae4]1][/anchor][/sup] که در بالا ما به آن پرداختیم نامرزمند اندیشه از سوی زبان بود، ولی آیا چون دو زبان اندیشهیِ گویندگان خود را مرزمند نمیسازند، کارایی یکسانی نیز در فرجام[sup][aname=rpa687b][[/aname][anchor=pa687b]2][/anchor][/sup] خواهند داشت؟
برای سادگی, بجای بررسیِ زبانهای زنده میتوانیم به زبانهای ساختگی یا همان برنامهریزیِ رایانهای بپردازیم که ساختاری بسیار سادهتر از زبانهای زنده داشته و کارکرد آنها در اندیشه بساویدنیتر است.
زبانهای برنامهریزی در رایانه را به زبانهای تراز-بالا (high-level) و تراز-پایین بخش میکنند. زبانهای تراز-بالا
زبانهایی هستند که به گویش ما هومنان[sup][aname=rpaf279][[/aname][anchor=paf279]3][/anchor][/sup] نزدیکتر میباشند، هر چه ترازِ زبان پایینتر میرود نیز به زبان ماشین و اسمبلی نزدیک شده و سرانجام 0 و 1 تنها میرسیم.
تراز-بالاترین زبانهای برنامهریزی هنگام نگارش این نوشتار دو زبان Ruby و Python میباشند.
نکتهیِ شایان یادکرد درباره این دو زبان این میباشند که هر دو همتراز یکدیگر بوده و برای انجام کارهایِ همانندی[sup][aname=rpaaa8b][[/aname][anchor=paaa8b]4][/anchor][/sup]
نیز ساخته شدهاند و برنامهریزهای دو زبان میتوانند برنامههای خود را بی هیچ دشواری چندانی به دیگری بترزبانند[sup][aname=rpa99ba][[/aname][anchor=pa99ba]5][/anchor][/sup].
هرآینه، کسانیکه به هر دو زبان توانا هستند از ویژگیهایِ پنهان ولی مهادین[sup][aname=rpa7c7f][[/aname][anchor=pa7c7f]6][/anchor][/sup] دو زبان نیز آگاهند[sup][aname=rpa5d91][[/aname][anchor=pa5d91]7][/anchor][/sup] که همان کارکرد زبان در شیوه اندیشه و راهکاریابی باشد.
دگرسانی[sup][aname=rpab76c][[/aname][anchor=pab76c]8][/anchor][/sup] فلسفهیِ میان دو زبان که از خواستههایِ سازندگان آغازین آنها برخاسته را میتوان اینچنین کوتاهید (Python Vs. Ruby)
[table]
[tr][td]#[/td][td]Python[/td][td]Ruby[/td]
[/tr]
[tr]
[td]1.[/td]
[td]باید تنها یک راه - و برگزینانه[sup][aname=rpad559][[/aname][anchor=pad559]9][/anchor][/sup] تنها یک راه - آشکار برای رسیدن به پاسخ باشد.[/td]
[td]باید چندین راه گوناگون برای رسیدن به پاسخ باشد.[/td]
[/tr]
[tr]
[td]2.[/td]
[td]آشکارگویی (explicitness) همیشه برتر از پوشیدهگویی است.[/td]
[td]پوشیدهگویی پذیرفتنیتر و خواستنیتر است.[/td]
[/tr]
[tr]
[tr]
[td]3.[/td]
[td]کُد باید تَنِک و جدا جدا باشد. [/td]
[td]کُد میتواند بیاندازه تودرتو و درهم ولی بجایش همفشرده[sup][aname=rpa94ce][[/aname][anchor=pa94ce]10][/anchor][/sup] باشد.[/td]
[/tr]
[td]4.[/td]
[td]بایستی شیء را دستکاری کرد.[/td]
[td]بایستی به شیء گفت چه کند.[/td]
[/tr]
[/table]
این دگرسانیهای ریز در فلسفه ولی به ساختار سراسر دگرسانی در زبان میترزبانند و هنگام کار و اندیشه
روی این دو زبان میتوان بآسانی دریافت و سُهید[sup][aname=rpa1134][[/aname][anchor=pa1134]11][/anchor][/sup] که چگونه در فرایند اندیشیدن به راههایِ از پیش گزیده شده میگراییم.
نمونهوار، اگر روی زبان Python بدنبال راهکار باشیم, همواره کمابیش بدنبال راهِ آشکار و درست آن میگردیم.
همچنین هنگام کد نوشتن وادار به آشکارگویی و جدا جدا و خوانانویسی هستیم، هنگامیکه در Ruby میتوانیم
و به این سو میانگیزیم که گاه چرخ را از نو ساخته و همان کار را نیز با کُدی همفشردهتر و پوشیدهگویانهتر بیانجامیم.
----
[aname=pa9ae4]1[/aname]. [anchor=rpa9ae4]^[/anchor] meh+and+i::Mehandi || مهندی: اهمیت Ϣiki-En, Ϣiki-Pâ importance
[aname=pa687b]2[/aname]. [anchor=rpa687b]^[/anchor] Farjâm || فرجام: پایان; خاتمه Ϣiki-En, www.loghatnaameh.org conclusion; ending
[aname=paf279]3[/aname]. [anchor=rpaf279]^[/anchor] hu+man::Human || هومن: آدم; هو+منش همچون دُژ+منش (دشمن), کسیکه کارکتر و منش والای دارد. human
[aname=paaa8b]4[/aname]. [anchor=rpaaa8b]^[/anchor] Hamânandidan || همانندیدن: همانندی کردن; تشبیه کردن to make similar
[aname=pa99ba]5[/aname]. [anchor=rpa99ba]^[/anchor] tar+zabânidan::Tarzabânidan <— Tarzabândan || ترزبانیدن: ترجمه کردن to translate
[aname=pa7c7f]6[/aname]. [anchor=rpa7c7f]^[/anchor] meh+âd+in::Mehâdin || مهادین: اصلی Ϣiki-En, Ϣiki-En principal; main
[aname=pa5d91]7[/aname]. [anchor=rpa5d91]^[/anchor] âgâh+idan::Âgâhidan || آگاهیدن: آگاه شدن Dehxodâ to be informed
[aname=pab76c]8[/aname]. [anchor=rpab76c]^[/anchor] digar+sân+i::Digarsâni <— Degarsâni || دیگرسانی: تفاوت ⚕Heydari difference
[aname=pad559]9[/aname]. [anchor=rpad559]^[/anchor] bar+gozin+âne::Bargozinâne || برگزینانه: ترجیحأ preferably
[aname=pa94ce]10[/aname]. [anchor=rpa94ce]^[/anchor] ham+fešordan::Hamfešordan || همفشردن: Ϣiki-En to compress
[aname=pa1134]11[/aname]. [anchor=rpa1134]^[/anchor] Sohidan || سهیدن: حس کردن MacKenzie to sense
نکته مهندی[sup][aname=rpa9ae4][[/aname][anchor=pa9ae4]1][/anchor][/sup] که در بالا ما به آن پرداختیم نامرزمند اندیشه از سوی زبان بود، ولی آیا چون دو زبان اندیشهیِ گویندگان خود را مرزمند نمیسازند، کارایی یکسانی نیز در فرجام[sup][aname=rpa687b][[/aname][anchor=pa687b]2][/anchor][/sup] خواهند داشت؟
برای سادگی, بجای بررسیِ زبانهای زنده میتوانیم به زبانهای ساختگی یا همان برنامهریزیِ رایانهای بپردازیم که ساختاری بسیار سادهتر از زبانهای زنده داشته و کارکرد آنها در اندیشه بساویدنیتر است.
زبانهای برنامهریزی در رایانه را به زبانهای تراز-بالا (high-level) و تراز-پایین بخش میکنند. زبانهای تراز-بالا
زبانهایی هستند که به گویش ما هومنان[sup][aname=rpaf279][[/aname][anchor=paf279]3][/anchor][/sup] نزدیکتر میباشند، هر چه ترازِ زبان پایینتر میرود نیز به زبان ماشین و اسمبلی نزدیک شده و سرانجام 0 و 1 تنها میرسیم.
تراز-بالاترین زبانهای برنامهریزی هنگام نگارش این نوشتار دو زبان Ruby و Python میباشند.
نکتهیِ شایان یادکرد درباره این دو زبان این میباشند که هر دو همتراز یکدیگر بوده و برای انجام کارهایِ همانندی[sup][aname=rpaaa8b][[/aname][anchor=paaa8b]4][/anchor][/sup]
نیز ساخته شدهاند و برنامهریزهای دو زبان میتوانند برنامههای خود را بی هیچ دشواری چندانی به دیگری بترزبانند[sup][aname=rpa99ba][[/aname][anchor=pa99ba]5][/anchor][/sup].
هرآینه، کسانیکه به هر دو زبان توانا هستند از ویژگیهایِ پنهان ولی مهادین[sup][aname=rpa7c7f][[/aname][anchor=pa7c7f]6][/anchor][/sup] دو زبان نیز آگاهند[sup][aname=rpa5d91][[/aname][anchor=pa5d91]7][/anchor][/sup] که همان کارکرد زبان در شیوه اندیشه و راهکاریابی باشد.
دگرسانی[sup][aname=rpab76c][[/aname][anchor=pab76c]8][/anchor][/sup] فلسفهیِ میان دو زبان که از خواستههایِ سازندگان آغازین آنها برخاسته را میتوان اینچنین کوتاهید (Python Vs. Ruby)
[table]
[tr][td]#[/td][td]Python[/td][td]Ruby[/td]
[/tr]
[tr]
[td]1.[/td]
[td]باید تنها یک راه - و برگزینانه[sup][aname=rpad559][[/aname][anchor=pad559]9][/anchor][/sup] تنها یک راه - آشکار برای رسیدن به پاسخ باشد.[/td]
[td]باید چندین راه گوناگون برای رسیدن به پاسخ باشد.[/td]
[/tr]
[tr]
[td]2.[/td]
[td]آشکارگویی (explicitness) همیشه برتر از پوشیدهگویی است.[/td]
[td]پوشیدهگویی پذیرفتنیتر و خواستنیتر است.[/td]
[/tr]
[tr]
[tr]
[td]3.[/td]
[td]کُد باید تَنِک و جدا جدا باشد. [/td]
[td]کُد میتواند بیاندازه تودرتو و درهم ولی بجایش همفشرده[sup][aname=rpa94ce][[/aname][anchor=pa94ce]10][/anchor][/sup] باشد.[/td]
[/tr]
[td]4.[/td]
[td]بایستی شیء را دستکاری کرد.[/td]
[td]بایستی به شیء گفت چه کند.[/td]
[/tr]
[/table]
این دگرسانیهای ریز در فلسفه ولی به ساختار سراسر دگرسانی در زبان میترزبانند و هنگام کار و اندیشه
روی این دو زبان میتوان بآسانی دریافت و سُهید[sup][aname=rpa1134][[/aname][anchor=pa1134]11][/anchor][/sup] که چگونه در فرایند اندیشیدن به راههایِ از پیش گزیده شده میگراییم.
نمونهوار، اگر روی زبان Python بدنبال راهکار باشیم, همواره کمابیش بدنبال راهِ آشکار و درست آن میگردیم.
همچنین هنگام کد نوشتن وادار به آشکارگویی و جدا جدا و خوانانویسی هستیم، هنگامیکه در Ruby میتوانیم
و به این سو میانگیزیم که گاه چرخ را از نو ساخته و همان کار را نیز با کُدی همفشردهتر و پوشیدهگویانهتر بیانجامیم.
----
[aname=pa9ae4]1[/aname]. [anchor=rpa9ae4]^[/anchor] meh+and+i::Mehandi || مهندی: اهمیت Ϣiki-En, Ϣiki-Pâ importance
[aname=pa687b]2[/aname]. [anchor=rpa687b]^[/anchor] Farjâm || فرجام: پایان; خاتمه Ϣiki-En, www.loghatnaameh.org conclusion; ending
[aname=paf279]3[/aname]. [anchor=rpaf279]^[/anchor] hu+man::Human || هومن: آدم; هو+منش همچون دُژ+منش (دشمن), کسیکه کارکتر و منش والای دارد. human
[aname=paaa8b]4[/aname]. [anchor=rpaaa8b]^[/anchor] Hamânandidan || همانندیدن: همانندی کردن; تشبیه کردن to make similar
[aname=pa99ba]5[/aname]. [anchor=rpa99ba]^[/anchor] tar+zabânidan::Tarzabânidan <— Tarzabândan || ترزبانیدن: ترجمه کردن to translate
[aname=pa7c7f]6[/aname]. [anchor=rpa7c7f]^[/anchor] meh+âd+in::Mehâdin || مهادین: اصلی Ϣiki-En, Ϣiki-En principal; main
[aname=pa5d91]7[/aname]. [anchor=rpa5d91]^[/anchor] âgâh+idan::Âgâhidan || آگاهیدن: آگاه شدن Dehxodâ to be informed
[aname=pab76c]8[/aname]. [anchor=rpab76c]^[/anchor] digar+sân+i::Digarsâni <— Degarsâni || دیگرسانی: تفاوت ⚕Heydari difference
[aname=pad559]9[/aname]. [anchor=rpad559]^[/anchor] bar+gozin+âne::Bargozinâne || برگزینانه: ترجیحأ preferably
[aname=pa94ce]10[/aname]. [anchor=rpa94ce]^[/anchor] ham+fešordan::Hamfešordan || همفشردن: Ϣiki-En to compress
[aname=pa1134]11[/aname]. [anchor=rpa1134]^[/anchor] Sohidan || سهیدن: حس کردن MacKenzie to sense
.Unexpected places give you unexpected returns