الگوریتم نامه

دنیای برنامه نویسی و هوش مصنوعی، بررسی الگوریتم های موجود، همفکری

الگوریتم نامه

دنیای برنامه نویسی و هوش مصنوعی، بررسی الگوریتم های موجود، همفکری

استشمامِ ساختار نرم افزار و سورس کد.

جمعه, ۲۰ ارديبهشت ۱۳۹۲، ۰۲:۳۱ ب.ظ

افزودن تصویر از طریق آدرس


حذف لینک

سلام به همه دوستان.

در این مقاله قصد دارم به یکی از دغدغه های اصلی برنامه نویس ها، مدیران و حتی کاربر های نرم افزار بپردازم.


مقدمه

توی صنعت نرم افزار، کیفیت کد همیشه یکی از نگرانی های اصلی بوده و هست. یکی از عوامل موثر برکیفیت کد، میزان استفاده از
استاندارد هاست. بد نیست اینجا از آقای Steven C. McConnell یاد کنم که به گفته مجله Software Development Magazine یکی از 3 نفریست که بیشترین تاثیر رو
روی صنعت نرم افزار داشته. این آقا کتابی داره با عنوان Code Complete که توی اون به خیلی از تمرین های خوب برنامه نویسی اشاره کرده. به علاوه، در مورد اشتباهات کلاسیک و محتمل هشدار های بجایی داده.
برگردم به بحث، مثالهایی از این استاندارد ها میتونه همین تمرین های خوب یا (Best Practices) ، الگوهای طراحی(Design patterns)، سبک های
معماری نرم افزار (Architectural styles) و غیره باشه.

(توی پرانتز. ترجمه کلمات فنی و غیر فنی بیگانه به فارسی واقعا" کار مشکلیه. یادمه سالها پیش یک کتاب ASP.NET میخوندم  و هرجا به کلمه
server میرسید از معادل اون یعنی کلمه "خادِم" استفاده کرده بود. من و کتاب به جایی رسیدیم که ترجیح دادیم یک مدت از هم دور باشیم)


Code Smell، یک اصطلاحیست رایج بین برنامه نویس ها. اعتقاد بر اینه که از بویی که از ساختار برنامه و سورس کد به مشام میرسه میشه
حدس زد برنامه در چه وضعی به سرمیبره و احیانا" میشه به بعضی از اشتباه های احتمالی که ممکنه بعدا" گریبان برنامه نویس رو بگیره پی برد.



مشکل کجاست؟

علیرغم وجود خیلی نرم افزارهایی که برای شناسایی بوهای ناخوشایندِ سورس کد طراحی شدند، هنوز راه حل مدون و مشخصی ارائه نشده. خیلی از این نرم افزارها راه هایی رو پیشنهاد کردند و بعضا" برای بعضی زبانهای برنامه نویسی خاص، عملکرد خوبی داشته اند. اما همچنان بحث، بحثِ مطرحیست و هر از گاهی توی جوامع دانشگاهی، در موردش مقاله نوشته میشه.


در ادامه، به شرح و بررسی یک مقاله خواهم پرداخت که سال 2010 میلادی در IEEE Transactions چاپ شده. ظاهرا" راه حل پیشنهادی خوبی دارند و در ضمن،
موضوع پروژه فوق لیسانس بنده هم بررسی و پیاده سازی همین مقالست.

اصل مقاله رو میتونید از اینجا دریافت کنید.


موید باشید.
فعلا".

  • سیداحمد موسوی

نظرات (۳)

besiyar ali bood  lezar pordimmm bi sabrane montazere post badi hastim
بسیار موضوع خوبیه
کلا یکی از مشکلات صنعت نرم افزار همین بحثه. جایی میخوندم که اگه میخواهید به یک مهندس برنامه نویس هدیه بدید این کتاب بهترین هدیه است. 
شاید رسیدن به توصیه ها ( best practice) با گذشت زمان ( والبته پرداخت هزینه زیاد توسط مشتریان نگون بخت در ازای محصولات غیر کیفی) برای هر برنامه نویسی مقدور باشد، اما بی شک توجه به آنها بهترین کمک را به کل صنعت خواند نمود و خسارات کمتری به همراه خواد داشت.
انشالله نوشته های شما برای همه ما مفید واقع شود
موفق باشید
اصولا برنامه خوب نوشتن در ایران یک چیز لوکس تلقی می شود. اغلب همه جا فقط مهم است که برنامه کار بکند. حالا اینکه چقدر نگهداری و تغییرش در آینده سخت است، مساله ای است که اغلب به آن توجه نمی شود. به هرحال امیدوارم موفق باشید و مطالب مفیدی از شما در این وبلاگ بخونیم.
راستی در مورد پست قبلی تون هم یک چیزی خواستم بگم... اینکه انگار اپیدمی است که آدمهایی که بعدا به رشته کامپیوتر گرایش پیدا می کنند در دوره دبیرستان مشکلاتی سر کلاس کامپیوتر داشته اند. من خودم هیچوقت در دبیرستان با خود این درس مشکلی نداشتم. اما دبیرهای کامپیوتر همیشه باهام کارد و پنیر بودند. چراش را نمی دانم
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی