تبلیغات
برنامه نویسی
 
برنامه نویسی
یک برنامه نویس خوب شعار نمیده کد می نویسه
درباره وبلاگ


این وبلاگ را برای ارتباط و تعامل بیشتر با دانشجویان طراحی کردم. در این وبلاگ نمونه کارهایی رو که انجام داده ام قرار می دهم. و همچنین یک سری source code که به دوستان برنامه نویس کمک کنه. امیدوارم بتونه مفید واقع بشه. سوالی بود درخدمت دوستان هستم.
پذیرش پروژه در
c c++
python
Linux(bash)
latex
visual basic
شماره همراه : ۰۹۲۲۷۹۶۷۲۴۳
elahe shaie shahraie

مدیر وبلاگ : الهه شائی شهرائی
صفحات جانبی
آمار وبلاگ
  • کل بازدید :
  • بازدید امروز :
  • بازدید دیروز :
  • بازدید این ماه :
  • بازدید ماه قبل :
  • تعداد نویسندگان :
  • تعداد کل پست ها :
  • آخرین بازدید :
  • آخرین بروز رسانی :

یک : برنامه ای که یک بار تولید بشه و دیگه به روز نشه، درحال حاضر منسوخ هست.

دو : بهتر هستش یکسری ویژگیهای برنامه رو با اصل نرم افزار تطبیق بدیم تا برعکسش.

سه : برنامه ای که مفید باشه در آینده حتما تغییر میکنه .

چهار : برنامه ای که مفید نباشه، بهتره بایگانی بشه .

پنجم : تنها ده درصد از کدهای هر برنامه ای اجرا میشه .

ششم : بهترین نرم افزارها هم حداقل یک خطا دارند .

هفتم : هرچی نرم افزار گسترده تر بشه، از منابع سیستم بیشتر استفاده میکند .

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

نهم : تا حالا هیچ نرم افزاری تولید نشده که حداقل توی شش ماه اول تمام خطاهای خطرناک اون گرفته بشه .

دهم : خطاهایی که به راحتی قابل پیدا کردن نیستن، در انواع مختلف بی نهایت هستن ، اما خطاهایی که قابل کشف هستن ، تعدادشون محدود هست .

یازدهم : پیجیدگی برنامه باید در حد برنامه نویسی باشه که بعدا باید اون رو نگهداری و در اون کد تغییرات ایجاد کنه .

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

سیزدهم : زمانی که به کدهایی که نوشتین برای چند ماه نگاه نکنید ، بعد از اون مدت وقتی نگاه میکنید انگار یکی دیگه اون کدها رو برای شما نوشته !

چهاردهم : در هر برنامه کوچکی برنامه های بزرگی درگیر هستند که نتیجه رو به نمایش میگذارند .

پانزدهم : کد نویسی یک نرم افزار رو زودتر شروع کنید چون در اکثر مواقع بیشتر طول میکشه .

شانزدهم : پروژه ای که بدون برنامه ریزی باشه ، سه برابر زمان تعیین شده تموم میشه و پروژه ای که از روی دقت برنامه ریزی شده باشه ، دو برابر طول میکشه .

هفدهم : اضافه کردن برنامه نویس به پروژه نرم افزاری که طول کشیده باعث کندتر شدن پروژه میشود .

هجدهم : یک برنامه هیچ وقت کمتر از 90 درصد کامل نیست ، و بالاتر از 95 درصد کامل هست .

نوزدهم : اگر شما بی نظمی رو در کارتون به صورت خودکار دربیارید ، طبیعتا شما یک بی نظم خودکار میشوید !

بیستم : برنامه ای بنویسید که فقط یک دیوونه بتونه ازش استفاده کنه ! البته همون دیوونه دوست داره که از برنامه استفاده کنه !

بیست و یک : کاربران نمیدونند واقعا از یک برنامه چه توقعی دارند تا زمانی که از اون استفاده کنند .

منبع: سایت برنامه نویسان





نوع مطلب : مظالب علمی، 
برچسب ها : قانون برنامه نویسی،
لینک های مرتبط :

       نظرات
یکشنبه 15 اسفند 1395
الهه شائی شهرائی

بازی اندرویدی باباپز را که در کافه بازار موجود هست را به زبان cpp پیاده سازی کردم. کدهای این بازی نمونه خوبی برای یادگیری شی گرایی در cpp هستند. برای دانلود میزارم تا همه استفاده کنند فقط لینک فقط یک ماه اعتبار داره. اگر نتونستید دانلود کنید بگید تا بروز رسانیش کنم. برای کامپایل و اجرا من از ویژوال استادیو ۲۰۱۳ استفاده کردم.

https://ufile.io/gw1m8


error



نوع مطلب : آموزشی، سی پلاس پلاس، 
برچسب ها : باباپز،
لینک های مرتبط :

       نظرات
پنجشنبه 3 اسفند 1396
الهه شائی شهرائی

سلام این کتاب را من خودم به سختی پیدا کردم. در اینجا میگزارم تا بقیه مثل من وقتشون تلف نشه

introduction to algorithms, a creative approach, udi manber

https://ufile.io/i39zn 

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






نوع مطلب : آموزشی، 
برچسب ها : introdution to algorithms، udi manber،
لینک های مرتبط :

       نظرات
چهارشنبه 2 اسفند 1396
الهه شائی شهرائی

قانون مورفی در سال ۱۹۴۹ در پایگاه نیروی هوایی ادوارز شکل گرفت. سرگزد ادوارد مورفی مهندس هوافضا بود که روی یک پروژه کار می کرد. در یکی از سخت ترین آزمایش های پروژه یک تکنسین  سیم ها را برعکس وصل کرد و آزمایش خراب شد.

به گزارش ایسنا به نقل از عصر ایران، مورفی درباره این تکنسین گفت: "اگه یه راه برای خراب کردن چیزی وجود داشته باشه اون همون یه راه رو پیدا می‌کنه" و این اولین قانون مورفی بود.

در ابتدا در فرهنگ فنی مهندسین رواج پیدا کرد و بعد به فرهنگ عامه راه یافت. بعدا قوانین دیگری هم بعد از کسب رتبه لازم از بنیاد مورفی در زمره قوانین اصلی قرار گرفتند.

برخی از این قوانین به شرح زیر هستند:

* فلسفه مورفی

لبخند بزن ... فردا روز بدتریه ...

* قانون صف:

اگر شما از یک صف به صف دیگری رفتید، سرعت صف قبلی بیشتر از صف فعلی خواهد شد.

* قانون تلفن:

اگر شما شماره‌ای را اشتباه گرفتید، آن شماره هیچ‌گاه اشغال نخواهد بود.

* قانون بینی:

بعد از اینکه دستتان حسابی گریسی شد، بینی شما شروع به خارش خواهد کرد.

* قانون کارگاه:

اگر چیزی از دستتان افتاد، قطعا به پرت‌ترین گوشه ممکن خواهد خزید.

* قانون دروغگویی:

اگر بهانه‌ دروغی‌تان پیش رئیس برای دیر آمدن پنچر شدن ماشینتان باشد، روز بعد واقعا به خاطر پنچر شدن ماشینتان، دیرتان خواهد شد.

* قانون روبرو شدن:

احتمال روبرو شدن با یک آشنا وقتی که با کسی هستید که مایل نیستید با او دیده شوید، افزایش می‌یابد.

* قانون اثبات:

وقتی می‌خواهید به کسی ثابت کنید که یک ماشین کار نمی‌کند، کار خواهد کرد.

* قانون بیومکانیک:

نسبت خارش هر نقطه از بدن با میزان دسترسی آن نقطه نسبت عکس دارد.

* قانون قهوه:

قبل از اولین جرعه از قهوه داغتان، رئیستان از شما کاری خواهد خواست که تا سرد شدن قهوه طول خواهد کشید.

* قانون ترافیک:

وقتی در ترافیک گیر کرده‌ای لاینی که تو در آن هستی دیرتر راه می‌افتد.

* قانون وسایل نقلیه:

وسایل نقلیه اعم از اتوبوس، قطار، هواپیما و ... همیشه دیرتر از موعد حرکت می‌کنند، مگر آنکه شما دیر برسید. در این صورت درست سر وقت رفته‌اند.

* قانون اتوبوس:

مدت زیادی منتظر اتوبوس می‌مانی و خبری نیست، پس سیگاری روشن می‌کنی. به محض روشن شدن سیگار، اتوبوس می‌رسد. (به عبارت ساده اگر سیگار را روشن کنی اتوبوس می‌رسد،. اگر برای زودتر رسیدن اتوبوس سیگار را روشن کنی اتوبوس دیرتر می‌آید.)

* قانون کار:

اگر به نظر می‌رسد همه چیزها خوب پیش می‌روند حتما چیزی را از قلم انداخته‌ای.

* قانون نتیجه:

احتمال بد پیش رفتن کارها نسبت مستقیم با اهمیت آنها دارد.

* قانون یادگیری:

شما چیزی را یاد نمی‌گیرید، مگر بعد از اینکه امتحان آن را دادید.

* قانون جستجو:

هر وقت دنبال چیزی می‌گردید، همیشه در آخرین مکانی که جستجو می کنید آن را می‌یابید.

* قانون خرید:

اهمیتی ندارد که چقدر دنبال جنسی بگردید، به محض اینکه آن را خریدید آن را در مغازه دیگری ارزان‌تر خواهید یافت.

* قانون چیزهای خوب:

هر چیز خوب در زندگی یا غیر قانونی است یا غیر اخلاقی یا چاق‌کننده.

* قانون ضایع شدن:

احتمال آنکه کاری را که انجام می‌دهید دیگران ببینند نسبت مستقیم دارد با میزان احمقانه بودن آن کار.

* قانون پمپ بنزین:

هنگام ورود به پمپ بنزین جایگاهی را که انتخاب می‌کنید کندتر و طولانی‌تر از جایگاه‌های دیگر خواهد بود.

* قانون لکه:

زمانی که می‌خواهید لکه روی شیشه پنجره را پاک کنید، لکه در سمت دیگر شیشه خواهد بود.

* قانون بقای کثیفی:

برای تمیز کردن هر چیزی، چیز دیگری باید کثیف شود.

* قانون دسترسی:

هر گاه چیزی را دور بیندازید، به محض آنکه دیگر به آن دسترسی نداشته باشید، به آن نیاز پیدا خواهید کرد.

* قانون صبحانه:

همیشه نان از طرفی که به آن کره مالیده‌اید روی زمین می‌افتد.

* قانون تعمیر:

زمانی که دستگاه معیوب خود را نزد تعمیرکار می‌برید، کاملا درست و بی‌عیب کار خواهد کرد.

* قانون اجتناب:

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

* قانون خانم مورفی:

اگر چیزی خراب یا اشتباه بشه، حتما تقصیر آقای مورفیه.

* قانون زندگی مورفی:

آیا زندگی شما نمونه خوبی از قوانین مورفی است؟

منبع: ایسنا





نوع مطلب : طنز و سرگرمی، 
برچسب ها : مورفی،
لینک های مرتبط :

       نظرات
جمعه 13 بهمن 1396
الهه شائی شهرائی

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

 HANDLE hStdin;
 DWORD fdwSaveOldMode;
 DWORD cNumRead, fdwMode;
 INPUT_RECORD irInBuf[128];
 hStdin = GetStdHandle(STD_INPUT_HANDLE);
 fdwMode = ENABLE_WINDOW_INPUT | ENABLE_LINE_INPUT | ENABLE_ECHO_INPUT;
 if (hStdin != INVALID_HANDLE_VALUE && GetConsoleMode(hStdin, &fdwSaveOldMode) && SetConsoleMode(hStdin, fdwMode))
 {
  while (true)
  {

   if (ReadConsoleInput(
    hStdin,      // input buffer handle
    irInBuf,     // buffer to read into
    128,         // size of read buffer
    &cNumRead)){

    if (irInBuf[0].EventType == KEY_EVENT && irInBuf[0].Event.KeyEvent.bKeyDown)
    {
     c = irInBuf[0].Event.KeyEvent.uChar.AsciiChar;   
    }
   }
  }
 }



 





















نوع مطلب : سی پلاس پلاس، 
برچسب ها : سی پلاس پلاس، قبل فشردن کلید اینتر، گرفتن اطلاعات کاربر،
لینک های مرتبط :

       نظرات
یکشنبه 8 بهمن 1396
الهه شائی شهرائی


error

ایمیل: eshahra@gmail.com

این تصویر، مربوط به کتابی هستش که خودم در حال تهیش هستم. موضوع کتاب درباره ساختمان داده‌ها و الگوریتم‌ها است. به عنوان نمونه اینجا قرارش دادم. هدفم این بود که برای کسانی که نیاز به کار تایپی دارند یک نمونه کار گزاشته باشم. آموزش latex مدنظرم نبوده. به دلیل اینکه در حال تهیه کتاب هستم کار برنامه نویسی انجام نمی دم فعلا. انجام دادم حتما تو وبلاگ قرار می دهم.         





نوع مطلب : تایپ مقاله و پایان نامه، 
برچسب ها : لاتک، زیپرشین، تایپ مقاله، تایپ پایان نامه،
لینک های مرتبط :

       نظرات
یکشنبه 8 بهمن 1396
الهه شائی شهرائی

مدتی بود که به این مسئله فکر می کردم که یک برنامه نویس خوب باید چه ویژگی هایی داشته باشه. بعد از جستجو به این ۲۰ مورد رسیدم. امیدوارم همه ما بتونیم این ویژگی های رو در خودمون نهادینه کنیم.

۱- خوش قول باشد و برنامه را سر موعد مقرر تحویل دهد.

۲- صرفاً مصرف کننده اسکریپت های دیگران نباشد بلکه در توسعه کدهای دیگران شرکت کند.

۳- دارای روحیه کمک کردن مخصوصا به برنامه نویسان تازه کار باشد.

۴- دارای تفکر اصولی باشد و هر کاری را از روی قائده خودش و منظم انجام دهد.

۵- دائما در حال مطالعه و کسب دانش در زمینه علوم جدید مرتبط با حوزه کاری خود باشد.

۶-برنامه را با سبک ساده تولید کند تا کاربر بتواند به راحتی از آن استفاده کند.

۷- دارای روحیه پوشاندن عیبهای برنامه نویسان دیگر باشد و اگر در برنامه دیگران باگی دید فورا همه جا جار نزند.

۸-شنونده خوبی باشد و بتواند نیازمندی های کارفرما را به خوبی درک  کند.

۹-نرم افزار و کاربر را یه خوبی پشتیبانی کند.

۱۰-با دقت باشد و کدهایی که می‌نویسد بسیار خوانا و تمیز باشند، به خوبی کامنت گذاری شده باشند، نامگذاری توابع و متغیرها کاملاً مرتبط باشد و در عین حال رابط کاربری نرم‌افزار بسیار جذاب و کاربر پسند باشد.

۱۱-  بتواند ماژول های مختلف، اسکریپت های مختلف، API های مختلف را در جهت خلق یک نرم‌افزار کارآمد به یکدیگر ارتباط دهد .

۱۲-فقط دنباله رو نباشد و خودش هم ابتکار و خلاقیت داشته باشد.

۱۳ تست نرم افزار را به خوبی انجام دهد.

۱۴ دارای حس نوع دوستی باشد و دانش خود را در اختیار سایر برنامه نویسان قرار دهد.

۱۵ اگر آموزش برنامه نویسی میدهد از اسلوب ساده استفاده کند نه از کلمات سقیل و سنگین.

۱۶ صبور با حوصله و همیشه پاسخگو باشد.

۱۷ برنامه را در سریعترین زمان ممکن و به موقع تحویل دهد.

۱۸ با کارفرما بدون توجه به ملیت و قومیت و ... تعامل داشته باشد.

۱۹ برنامه هایش را مستند سازی کند.

۲۰ تمرکز روی پروژه های مختلف در یک زمان داشته باشد.

منبع: https://sokanacademy.com/blog/313 با تغییر






نوع مطلب : مظالب علمی، 
برچسب ها :
لینک های مرتبط :

       نظرات
یکشنبه 22 اسفند 1395
الهه شائی شهرائی

فرض کنید برای یک مهمونی بخواهید برنامه ریزی کنید کی کجا بشینه. بعضیا با هم دوستن (friend) بعضی ها دشمن که اصلا دوست ندارن کنار هم بشینن (enemy) بقیه هم براشون فرقی نمیکنه کنار هم بشینن یا نه (indifferent). چطور برای این مهمونی برنامه ریزی می کنید؟

 راه حل : این مسئله و شرایط اون رو به صورت یک فرمول cnf در میاریم و به دنبال انتسابی می گردیم که این جمله را true کند. جزئیات بیشتر مسئله و توضیح راه حل و شرایط و ورودی و خروجی برنامه رو میتونید در فایلهای ضمیمه ببینید. source برنامه هم با زبان python هست.

sat problem description ,input and outputscnf from formula example

اینم سورس برنامه:

formula , sat_solver





نوع مطلب : هوش مصنوعی، 
برچسب ها : تصدیق پذیری، sat problem، DPLL، الگوریتم dpll،
لینک های مرتبط :

       نظرات
یکشنبه 15 اسفند 1395
الهه شائی شهرائی


( کل صفحات : 2 )    1   2