# اخبار و اعلانات > گفتگوی عمومی کامپیوتر و فناوری اطلاعات >  شانزده سخن از بزرگان دنیای برنامه نویسی

## eshpilen

اشكال زدايي (debug) يك كد چندين مرتبه از نوشتن آن سخت‌تر است. بنابراين اگر كد اوليه خود را بسيار هوشمندانه بنويسيد، جهت اشكال زدايي آن به اندازه‌ي كافي باهوش نخواهيد بود! (Brian Kernighan)

تنها دو نوع زبان برنامه نويسي وجود دارد: آنهايي كه برنامه نويس‌ها از آن شكايت دارند و آن‌هايي كه اصلا مورد استفاده قرار نمي‌گيرند! (Bjarne Stroustrup)

هر كسي مي‌تواند كدي بنويسد كه يك كامپيوتر آن‌را درك كند. يك برنامه نويس خوب كدي را مي‌نويسد كه براي ساير همكارانش قابل درك باشد. (Martin Fowler)

اندازه‌گيري درصد پيشرفت يك پروژه برنامه نويسي با شمارش تعداد سطرهاي كدهاي آن همانند اندازه گيري درصد پيشرفت ساخت يك هواپيما از طريق وزن كردن آن است! (Bill Gates)

برنامه نويسي سطح پايين (Low-level) روح برنامه نويس‌ها را جلا مي‌بخشد! (John Carmack, ID software)

بزرگي واقعي با اندازه گيري مقدار آزادي كه به ديگران عطا مي‌كنيد، سنجيده مي‌شود و نه به اينكه چگونه ديگران را وادار مي‌كنيد تا آنچه را كه مد نظر شما است اجرا كنند. (Larry Wall)

هيچگاه از gets و sprintf استفاده نكنيد، در غير اينصورت شياطين به زودي به سراغ شما خواهند آمد! (FreeBSD Secure Programming Guidelines)

صحبت كردن ساده است. كدت رو نشون بده! (Linus Torvalds)

علوم رايانه هيچگاه شخصي را تبديل به يك برنامه نويس خوب نمي‌كنند همانطور كه مطالعه در مورد رنگ‌ها و قلم‌ها شما را تبديل به يك نقاش خوب نمي‌كند. (Eric Raymond)

برنامه نويسي مانند س.ك.س است. يك اشتباه و سپس تحمل كردن و پشتيباني آن تا آخر عمر! (Michael Sinz)

هيچ برنامه‌اي تا زمانيكه آخرين يوزر آن بميرد به پايان نخواهد رسيد! (از يك گروه پشتيباني نرم افزار ناشناس!)

برنامه نويس‌هاي C هرگز نخواهند مرد. آن‌ها فقط تبديل به void خواهند شد. (ناشناس)

پايان دنياي يونيكس 2 به توان 32 ثانيه پس از اول ژانويه 1970 است! (ناشناس)

زماني‌ كه كد مي‌نويسيد فرض كنيد شخصي كه قرار است در آينده از كدهاي شما نگهداري كند يك ديوانه‌ي زنجيري است كه آدرس خانه‌ي شما را مي‌داند! (Rick Osborne)

سادگي يك برنامه يكي از شرايط قابل اطمينان بودن آن است. (Edsger Dijkstra)

يونيكس سيستم عامل ساده‌اي است، اما شما بايد فرد باهوشي باشيد تا بتوانيد اين سادگي را درك كنيد! (Dennis Ritchie)

اگر به كامپايلر دروغ بگوئيد او بعدا انتقام خواهد گرفت! (Henry Spencere)

پرل تنها زبان برنامه نويسي است كه پيش و پس از رمزنگاري RSA به يك شكل به نظر مي‌رسد! (Keith Bostic)

تنها دو صنعت هستند كه به مصرف كنندگان خود "كاربر" مي‌گويند: صنعت كامپيوتر و تجارت مواد مخدر! (ناشناس)

======================================

منبع: http://vahidnasiri.blogspot.com/2009/02/blog-post.html

----------


## eshpilen

> پرل تنها زبان برنامه نويسي است كه پيش و پس از رمزنگاري RSA به يك شكل به نظر مي‌رسد! (Keith Bostic)


یعنی چی؟
کسی میدونه چرا؟

----------


## Netsky

این جمله لینوس تروالدز :



> صحبت كردن ساده است. كدت رو نشون بده!


منو یاد این ضرب المثل میندازه : 
" به عمل کار برآید به سخندانی نیست "

----------


## مهران رسا

مشکلاتي که در برنامه نويسي شما را نگران ميکنند از مشکلاتي که به آساني از کنار آنها ميگذريد حاد تر نيستند .

----------


## Netsky

یه جمله جالب هم از رفیقم یادم افتاد . میگفت : تا موقعی که ویژوال استدیو رو باز نکنی ، دست و دلت به کد نویسی نمیره .  :لبخند گشاده!:

----------


## L u k e

> برنامه نويس‌هاي C هرگز نخواهند مرد. آن‌ها فقط تبديل به void خواهند شد. (ناشناس)


جالب بود 
یه جمله الان به ذهنم رسید از بزرگی گمنام :

ماکروسافت همیشه در دنیای متوسط ها حرفی واسه گفتن دارد

----------


## Netsky

> ماکروسافت همیشه در دنیای متوسط ها حرفی واسه گفتن دارد


شک ندارم این جمله رو یکی از افراطی های اوپن سورسی گفته . 
من نمیدونم اینا چه پدر کشتگی با مایکروسافت دارن ؟؟؟
اینا که اینقده غد غد میکنن و خودشون رو در دنیای قدرتمندها فرض میکنن ( زهی خیال باطل ) ، نمیدونم چرا مثل مایکروسافت غول نرم افزاری دنیا نشدن ؟؟!!

----------


## eshpilen

جواب سوال منو بدید  :لبخند گشاده!:

----------


## syntiberium

> اگر به كامپايلر دروغ بگوئيد او بعدا انتقام خواهد گرفت! (Henry Spencere)
> اشكال زدايي (debug) يك كد چندين مرتبه از نوشتن آن سخت‌تر است.


این دو جمله رو من روزی چند بار باهاش تصادف وحشتناک می کنم .




> صحبت كردن ساده است. كدت رو نشون بده! (Linus Torvalds)
> صحبت كردن ساده است. بازی که ساختی و پولی که باهاش در آوردی رو نشون بده (پدر و مادرم)


جمله ی دوم رو هر روز می شنوم .




> اندازه‌گيري درصد پيشرفت يك پروژه برنامه نويسي با شمارش تعداد سطرهاي  كدهاي آن همانند اندازه گيري درصد پيشرفت ساخت يك هواپيما از طريق وزن كردن  آن است! (Bill Gates)


این جمله رو زیاد قبول ندارم چون اگر تعداد خطوط یک برنامه ی خوب دو برابر حد معمول خودش بشه سرعت و قدرتش کم نمی شه فقط یکمی حجم فایل exe زیاد می شه که اونم زیاد مشکلی پیش نمیاره .




> تا موقعی که ویژوال استدیو رو باز نکنی ، دست و دلت به کد نویسی نمیره .


من دقیقا در این مورد بر عکسم یعنی تا دست و دلم به کد نویسی نره ویژوال استدیو رو باز نمی کنم و اگر هم بازش کنم و دست و دلم به کد نویسی نره بدون هیچ تغییری دوباره می بندمش .

----------


## dousti_design

واقعا میشه از  هرکدوم از سخنان یک دنیا نکته یاد گرفت. :تشویق: 



> ماکروسافت همیشه در دنیای متوسط ها حرفی واسه گفتن دارد


من کاملا با این حرف شما مخالف هستم. پیشنهاد میکنم به طرحهای مایکروسافت از لحاظ تجاری نگاه بکنید. اپن سورسی ها عموما در تلاش هستند تا قدرت خودشون رو در کدنویسی به رخ بکشن اما مایکروسافت علاوه بر این که در کدنویسی پروژه هاش بسیار حرفه ای هست طرحهاش هم تجاری هستن و بیشتر به فکر بازار هست تا قدرتنمایی

----------


## eshpilen

> یعنی چی؟
> کسی میدونه چرا؟


ای بابا فهمیدم منظورش چیه  :بامزه: 

من اول فکر میکردم میگه زبان پرل (یا برنامه نویسی با زبان پرل) بعد از اختراع شدن رمزنگاری RSA تغییری نکرده.

اما بعد دوزاریم افتاد که منظور چیز دیگه بوده!

----------


## dousti_design

> اما بعد دوزاریم افتاد که منظور چیز دیگه بوده!


خی چی بوده؟ بگو ماهم بفهمیم

----------


## r00tkit

این جمالات رو  تو پادکست گروه جادی (کیبورد ازاد ) شنیدم   

اشپیلن  اگه کمی کد پرل بزنی منظور نویسنده رو میگیری 

تو گوگل سرچ کنید :top funny computer quotes  یه گونی از این جملات براتون می یاره

----------


## eshpilen

> خی چی بوده؟ بگو ماهم بفهمیم


آخه یادم افتاد سینتاکس پرل یجورایی عجق وجق بنظر میرسه  :لبخند گشاده!: 
یعنی مثلا توش از علامتهای اختصاری زیاد استفاده شده و برنامه هاش در نگاه اول مثل رمز بنظر میرسن (کلا نامفهوم). واسه همین منظور طرف این بوده که وقتی رمزش میکنی بازم ظاهرش تغییری نمیکنه!!

----------


## Web.Designer01

> برنامه نويسي مانند س.ك.س است. يك اشتباه و سپس تحمل كردن و پشتيباني آن تا آخر عمر! (Michael Sinz)


 این یعنی چی؟!



> زماني‌ كه كد مي‌نويسيد فرض كنيد شخصي كه قرار است در آينده از كدهاي شما نگهداري كند يك ديوانه‌ي زنجيري است كه آدرس خانه‌ي شما را مي‌داند! (Rick Osborne)


اینم خیلی باحال بود.
مرسی

----------


## Netsky

> این یعنی چی؟!


البته اینجا نمیشه زیاد در موردش توضیح داد ولی یه راهنمایی میکنم تا یه خورده متوجه منظور این جمله بشید . منظور از این جمله همون بی احتیاطی در حین انجام عمل هست . اونجا یه عملی انجام میشه . تو برنامه نویسی هم شما عمل کد نویسی رو انجام میدی و نباید بی احتیاطی کنی . بی احتیاطی اونجا باعث بوجود اومدن یه موجود زنده میشه که دردسر زاست . اینجا هم اگه شما بی احتیاطی کنی باعث بوجود اومدن یه برنامه درب و داغون میشه که بازم مشکل زاست . 
فکر کنم دیگه قضیه رو متوجه شده باشید .

----------


## Web.Designer01

> البته اینجا نمیشه زیاد در موردش توضیح داد ولی یه راهنمایی میکنم تا یه خورده متوجه منظور این جمله بشید . منظور از این جمله همون بی احتیاطی در حین انجام عمل هست . اونجا یه عملی انجام میشه . تو برنامه نویسی هم شما عمل کد نویسی رو انجام میدی و نباید بی احتیاطی کنی . بی احتیاطی اونجا باعث بوجود اومدن یه موجود زنده میشه که دردسر زاست . اینجا هم اگه شما بی احتیاطی کنی باعث بوجود اومدن یه برنامه درب و داغون میشه که بازم مشکل زاست . 
> فکر کنم دیگه قضیه رو متوجه شده باشید .


راستش خودمم به همین موضوع فک کرده بودم!
الان بهتر متوجه شدم!آخه همیشه هم دردسر ساز نیست،ولی اینجا منظور اون موقع هایی بوده که دردسر سازه(ناخواسته) :خجالت: 
واردیا کلک! :چشمک:

----------


## Slytherin

gets و sprintf یعنی چی؟ :خجالت:  :لبخند گشاده!:

----------


## Felony

> gets و sprintf یعنی چی؟


 gets در ++C برای دریافت یک رشته تا زمان وارد شدن خط جدید ( n\ ) یا رسیدن به آخر فایل استفاده میشه و یک پارامتر میگیره که رشته دریافتی رو درش ذخیره میکنه .

sprintf هم در ++C مثل printf عمل میکنه با این تفاوت که خروجی رو در رشته ای که به عنوان پارامتر اول بهش میدی نگهداری میکنه .

برای اطلاعات بیشتر به این لینک مراجعه کن .

----------


## JaguarXF

> gets در ++C برای دریافت یک رشته تا زمان وارد شدن خط جدید ( n\ ) یا رسیدن به آخر فایل استفاده میشه و یک پارامتر میگیره که رشته دریافتی رو درش ذخیره میکنه .
> 
> sprintf هم در ++C مثل printf عمل میکنه با این تفاوت که خروجی رو در رشته ای که به عنوان پارامتر اول بهش میدی نگهداری میکنه .
> 
> برای اطلاعات بیشتر به این لینک مراجعه کن .


از دو لحاظ شیطانی هست:
یکی خطاهای برنامه نویس نوپا: تخصیص دادن فضای حافظه به آن . و دوم هم type safety آن
یکی هم از لحاظ برنامه نویس با تجربه تر: نگاهی به سورس exploit ها و sprintf های موجود در آنها ...

----------


## مهران رسا

Your customers do not mean what they sayWrite code as if you had to support it for the Rest of your lifeMake interfaces easy to use correctly and hard to use incorrectly

----------


## returnx

چند جمله هم از من :
همیشه برنامه نویسان بزرگ اشتباهات کوچیک دارند.(برای لا پوشونی های اشتباهاتم تو کد نویسی اصولا می گم)
همیشه سخت ترین مسئله ها ساده ترین راه حل رو دارند(برای روحیه دادن به خودم استفاده می کنم)
هیچ وقت هیچ زبان برنامه نویسی بهتر از دیگری نیست چون هر کدوم برای کاری ساخته شده اند...

----------

