محبوبترینها
نمایش جنگ دینامیت شو در تهران [از بیوگرافی میلاد صالح پور تا خرید بلیط]
9 روش جرم گیری ماشین لباسشویی سامسونگ برای از بین بردن بوی بد
ساندویچ پانل: بهترین گزینه برای ساخت و ساز سریع
خرید بیمه، استعلام و مقایسه انواع بیمه درمان ✅?
پروازهای مشهد به دبی چه زمانی ارزان میشوند؟
تجربه غذاهای فرانسوی در قلب پاریس بهترین رستورانها و کافهها
دلایل زنگ زدن فلزات و روش های جلوگیری از آن
خرید بلیط چارتر هواپیمایی ماهان _ ماهان گشت
سیگنال در ترید چیست؟ بررسی انواع سیگنال در ترید
بهترین هدیه تولد برای متولدین زمستان: هدیههای کاربردی برای روزهای سرد
در خرید پارچه برزنتی به چه نکاتی باید توجه کنیم؟
صفحه اول
آرشیو مطالب
ورود/عضویت
هواشناسی
قیمت طلا سکه و ارز
قیمت خودرو
مطالب در سایت شما
تبادل لینک
ارتباط با ما
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
مطالب سایت سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون
آمار وبسایت
تعداد کل بازدیدها :
1826656555
کدهای نرم افزارهای موفق چه ویژگی دارند؟
واضح آرشیو وب فارسی:ماهنامه شبکه: تنوع کدهای نرم افزاری در جهان بسیار زیاد شده است. گوگل به تنهایی بیش از دو میلیارد دستور برنامه نویسی را در مخزن کدهایش نگه داری می کند؛ اما همه کدها با یکدیگر یکسان نیستند. طراحان نرم افزارها معمولاً از استراتژی های خاصی برای بهینه سازی کدهای خود استفاده می کنند؛ اما سؤال اصلی این است که چه عواملی باعث می شوند تا کدهای یک نرم افزار متمایز از کدهای نرم افزار دیگر شده و چه عواملی باعث می شوند، برنامه نویسان حرفه ای، یک کد نرم افزاری را خوب یا بد قلمداد کنند؟برای آن که بتوانیم به این پرسش پاسخ درستی دهیم باید با تعداد زیادی از توسعه دهندگان گفت وگو کنیم، برگه های مرتبط با برنامه نویسی را موردبررسی قرار دهیم، کدهای نوشته شده توسط افراد مختلف را تحلیل کنیم و بالاخره عوامل مثبت و منفی را دسته بندی کنیم تا آنگاه بتوانیم علت خوب یا بد بودن یک قطعه کد را بیان کنیم. عوامل بسیار زیادی باعث می شوند تا کدهای یک نرم افزار خوب یا بد شناخته شوند، اما به طورکلی همه برنامه نویس ها بر این موضوع اتفاق نظر دارند که شش عامل اصلی خوانایی، فهم آسان، توضیحات، قابلیت نگهداری، ساده و انعطاف پذیر بودن و درنهایت اجرایی بودن باعث می شوند کدهای یک نرم افزار متمایز از کدهای مشابه شود. در ادامه به این شش عامل پرداخته ایم. مطلب پیشنهادی افزایش سرعت برنامه نویسی با متدها و کلاس های از پیش ساخته شده در دات نت ترفندهای کوتاه و کاربردی در سی شارپ راحت خوانده شوند به نظر می رسد همه طراحان و توسعه دهندگان در این مورد اتفاق نظر دارند که یکی از مهم ترین عامل های موفقیت یک نرم افزار، خوانا بودن کدهای آن است؛ یعنی کدهایی که توسط طراحان و برنامه نویس ها در مدت زمان اندکی قابل خواندن و فهمیدن باشند، به عنوان کد خوب شناخته می شوند. لوک برنام، مهندس ارشد نرم افزار در Lionbridge می گوید: «اگر من احساس کنم توانایی درک کدی را در 5 دقیقه یا کمتر از آن ندارم، نشان می دهد، کدنویس کارش را به درستی انجام نداده است.» کامپیوتر اهمیتی به نام متغیرها یا تورفتگی موجود در کدها نمی دهد اما این موضوع برای مردم بااهمیت است. یک کد فقط یک بار نوشته می شود، اما هزاران مرتبه خوانده می شود. ازاین رو به کارگیری نام های بامسما برای متغیرها و به کارگیری درست تورفتگی در زمان کدنویسی باعث افزایش خوانایی کد شده و کیفیت کدها را افزایش می دهد. کدنویسی خوب به معنی پیاده سازی درست سبک بندی کدها است. رعایت فاصله مناسب، به کارگیری درست تورفتگی کدها، پیروی از قواعد مرسوم و از همه مهم تر انتخاب نام مناسب برای متغیرها ازجمله عوامل مؤثر در خوانا بودن یک کد به شمار می روند. به طور مثال شکل 1 به هیچ عنوان یک حرکت هوشمندانه درزمینه رعایت تورفتگی ها نیست. اگر یک تابع دارای دو آرگومان است، این دو آرگومان را در دو خط قرار دهید. اگر یک عبارت ریاضی از واژه های ریاضی استفاده می کند، سعی کنید هر یک از آن ها را در خط مربوط به خود قرار دهید. به طور خلاصه، خوانایی بیشتر برابر با درک بیشتر است، همین موضوع باعث می شود تا زندگی راحت تر شود. شکل1: عدم رعایت درست سطح تورفتگی در کدها باعث می شود خوانایی آن ها به طرز محسوسی کاهش یابد. زمانی که افراد با نگاه کردن به کدهایی به سرعت آن ها را درک کنند، نرم افزارها نیز به همان سرعت به جلو پیش خواهند رفت. زمانی که یک گروه نرم افزاری گرد هم می آیند و نرم افزاری را خلق می کنند، اعضاء این گروه تا ابد در کنار یکدیگر نخواهند بود و عضوهای جدیدی به گروه اضافه خواهند شد، درنتیجه اگر کدهای یک محصول نرم افزاری با وضوح کامل نوشته شده باشند، برنامه نویس های جدید به سرعت کدها را درک کرده و قادر هستند نرم افزار را با سرعت بیشتری به جلو هدایت کنند. توضیح خوبی داشته باشند لوک برنام در ادامه صحبت های خود می افزاید: «در کنار قالب بندی و نام گذاری مناسب، توضیحات درج شده در کنار کدها می تواند به طرز شگفت انگیزی به فهم ساده تر کدها کمک کند؛ اما هرگونه توضیحی مناسب نیست. من به توضیحاتی که اعلام می دارند یک حلقه For چگونه کار می کند نیازی ندارم. (شکل 2) من به توضیحاتی نیاز دارم که به من بگویند یک قطعه کد چرا و به چه دلیل استفاده شده و قرار است چه کاری انجام دهد. (شکل 3) به نظر من کدی خوب است که نشان دهد در ذهن نویسنده کد چه چیزی گذشته است.» توضیح خوب نه تنها به طراحان دیگر کمک می کند تا از فلسفه کدها آگاه شوند، به خود برنامه نویس هم کمک می کند. یک برنامه نویس زمانی که کدهایی را می نویسد می داند بر مبنای چه منطقی رفتار کرده است، اما چند سال بعد، به طور دقیق نمی داند یک قطعه کد به چه منظوری نوشته شده و چه کاری انجام می دهد. درواقع پارادایم برنامه نویسی ادیبانه به چیزی فراتر از یکسری توضیح های مختصر بازمی گردد، به طوری که دربرگیرنده مستنداتی است که اقدام به توضیح کدها می کند. کوین مویلن مهندس ارشد نرم افزار در Genuine Interactive این موضوع را به سادگی این گونه بیان می کند: «نظرات بسیار عظیم و حائز اهمیت اند.» البته در این زمینه دو دیدگاه وجود دارد، عده ای بر این باوراند که قطعه کدی خوب است که نیاز به هیچ توضیحی نداشته باشد و بتواند خودتعریف باشد، اما در طرف مقابل گروه دیگری بر این باور هستند که کدها با هر کیفیتی که تولیدشده باشند، به توضیح نیاز دارند. شکل2: هر فرد غیر برنامه نویسی با نگاه کردن به این دستورات به خوبی می داند، قطعه کد اول دریافت کد کشور و قطعه کد دوم برابر بودن عبارت واردشده با US را نشان می دهد. ساده باشند یک قطعه کد درنهایت ممکن است کارهای پیچیده ای را انجام دهد، اما طراحان خوب، بهترین کدها را به ساده ترین شکل ممکن طراحی می کنند. برنامه نویس های خوب به درستی می دانند که کار را چگونه باید انجام دهند، به طوری که کدهای نوشته شده به دوراز هرگونه پیچیدگی باشند. مویلن دراین باره می گوید: «هر قطعه کدی که برای انجام کار مشخصی طراحی شده است، خواه کوچک یا بزرگ باید وظیفه اش را به بهترین نحوه ممکن انجام دهد. بهترین راه حل ها در ساده ترین راه حل ها قرار دارند.» یک تابع کوچک که بتواند یک وظیفه را به خوبی به سرانجام برساند از 1000 خط کد که مدیریت آن ها کابوس شبانه است، ارزشمندتر است. لوک برنام نیز بر ساده سازی کدها تأکید خاصی دارد، او همواره به اعضای گروه خود توصیف می کند کدها را تا حد امکان ساده کنند. لوک برنام در ادامه صحبت های خود درباره ساده سازی می افزاید: «کد خوب تنها ساده نیست، بلکه از ساده ترین و دم دست ترین روش ها استفاده می کند. کد خوب به کمترین زمان ممکن برای طراحی نیازمند است. من کدهای زیادی را دیده ام که انواع مختلفی از کارها را به خوبی انجام می دادند، به دلیل این که از ابتدا به ساده ترین شکل ممکن نوشته شده بودند.» شاید این جمله معروف از بیل گیتس را شنیده باشید که می گوید: «من همیشه انسان های تنبل را برای انجام کارهای سخت در مایکروسافت انتخاب می کنم، به دلیل این که یک انسان تنبل همواره ساده ترین راه را برای انجام کارها انتخاب می کند.» (به نقل از سایت telegraph.co.uk) شکل3: در این مثال من در نظر دارم تابعی را از یک کتابخانه دیگر فراخوانی کنم. توضیحات به خوبی بیان گر این موضوع هستند. خلاصه طراحان بر این باور هستند که ساده نگه داشتن چیزها سرانجام به طراحی نرم افزارهای باکیفیت تر کمک می کند. آمارها نشان داده اند که بخش عمده ای از باگ های نرم افزاری به علت پیچیده بودن سورس کدها به وجود آمده است. انعطاف پذیر باشند انعطاف پذیری یک قطعه کد نرم افزاری به این معنی است که هر زمان نیازی به تغییر داشته باشد، در سریع ترین زمان ممکن تغییر روی آن اعمال شده و نرم افزار گسترش پیدا کند. همچنین قطعه کدی انعطاف پذیر است که در آینده به ساده ترین شکل ممکن در بخش های دیگر قابل استفاده مجدد (reuse) باشد. لوک برنام انعطاف پذیری را این گونه بیان می کند: «نرم افزاری به خوبی نوشته شده است که هر دو جنبه نیازهای امروز و نیازهای آینده را در خود جای داده باشد». پیش بینی نیازهای آینده غیرممکن است، اما می توان نرم افزاری را نوشت که از انعطاف پذیری لازم برخوردار باشد و با مختصر تغییرهایی با نیازهای آینده همسو شود. کدی خوب به شمار می رود که طراحان در آینده با اضافه کردن یا تغییر بخش های مشخصی از کد، بدون آن که نیازی به شکستن بخش های دیگر باشد، بتوانند با آن کار کنند.» کریستوفر جانسون در سایت Stack overflow نوشته است: «شما زمانی اطلاع پیدا خواهید کرد یک قطعه کد به درستی نوشته شده است یا خیر که خود تلاش کنید آن ها را تغییر دهید.» مایکل رایلی در Stack Exchange نوشته است: «نشانه یک کد خوب، محصولی است که شما کدنویسی آن را شش ماه پیش انجام داده اید و اکنون شخص دیگری بدون آن که سؤالی در خصوص این کد از شما داشته باشد توانایی ویرایش آن ها را داشته باشد». در کنار قالب بندی و نام گذاری مناسب، توضیحات درج شده در کنار کدها می تواند به طرز شگفت انگیزی به فهم ساده تر کدها کمک کند قابلیت نگه داری داشته باشند مهم نیست یک قطعه کد تا چه اندازه خوب نوشته شده باشد، این احتمال وجود دارد که یک قطعه کد دارای باگ های نرم افزاری باشد. مویلن می گوید: «کدهای خود را به گونه ای پیاده سازی کنید که در زمان موردنیاز هر شخصی توانایی اصلاح آن ها را داشته باشد.» قابلیت نگه داری، یکی از ویژگی های کلیدی کدهای خوب به شمار می رود. برای آن که همه کدها قابلیت نگهداری داشته باشند لازم نیست آن ها را بیش ازحد پیچیده کنید. همواره در پیاده سازی کدهای خود سعی کنید، وظایفی همچون تغییر مقدار آدرس های URL، دسترسی های کلیدی، تغییر گذرواژه بانک های اطلاعاتی و چنین مواردی را به ساده ترین شکل ممکن انجام دهید. توجه به این نکته باعث می شود تا نگه داری کدها در آینده به سادگی امکان پذیر باشد. دیوید ریچمن در Quora نوشته است: «تفاوت کدی که به درستی کار می کند با کدی که از طراحی عالی برخوردار است به قابلیت نگهداری آن بازمی گردد.» و ... کار کنند سرانجام به بارزترین و مشخص ترین ویژگی یک کد نرم افزاری خوب می رسیم. یک کد خوب درنهایت باید قابلیت اجرا داشته باشد. مویلن دراین باره می گوید: «یک قطعه کد نرم افزاری در درجه اول باید کاری را که برای آن طراحی شده است انجام دهد.» لوک برنام دراین باره می گوید: «هرچند همه چیز در سادگی خلاصه می شود، اما اگر یک نرم افزار توانایی انجام وظیفه ای را که از آن انتظار داریم نداشته باشد، مهم نیست چقدر خوب به نظر برسد، چون فاقد ارزش خواهد بود». ============================= شاید به این مطالب هم علاقمند باشید: CES 2016: کِرم روباتی که به کودکان سه ساله کدنویسی آموزش می دهد CES 2016: توپ اسباب بازی که اصول پایه برنامه نویسی را به کودکان آموزش می دهد + تصویر بهترین کتاب های رایگان آموزش برنامه نویسی وب 2015 + لینک دانلود بهترین ابزارهای CSS مناسب برنامه نویسان وب چهارده زبان برنامه نویسی برای شغل آینده شما ساخت برنامه های ویندوز 10 بدون یک خط کدنویسی اینفوگرافی: انتخاب اولین زبان برنامه نویسی بر اساس زندگی که می خواهید نگاهی به Galaxy S6 Edge Plus برنامه نویسی بر فراز ابرها انقلاب برنامه نویسی گرافیکی قیام NoSQL ادامه دارد با این سایت زبان SQL را رایگان و کلاسیک بیاموزید
یکشنبه ، ۱فروردین۱۳۹۵
[مشاهده متن کامل خبر]
این صفحه را در گوگل محبوب کنید
[ارسال شده از: ماهنامه شبکه]
[مشاهده در: www.shabakeh-mag.com]
[تعداد بازديد از اين مطلب: 128]
صفحات پیشنهادی
استخدام طراح گرافیک دارای تسلّط کامل و کافی به نرم افزارهای PS و Ai
استخدام طراح گرافیک دارای تسلّط کامل و کافی به نرم افزارهای PS و Ai یک شرکت معتبر از طراح گرافیک برای سال جدید در تهران دعوت به همکاری می نماید عنوان شغلی جنسیت شرایط احراز طراح گرافیک خانم آقا دارای تسلّط کامل و کافی به نرم افزارهای PS و Ai خلّاق حرفه ای باتجربه لطفاً حتماًتهدید بدافزارهای نفوذ کننده به نرم افزارهای بانکی تلفن همراه
وکیل ملت بانک مرکزی در خصوص تهدید بدافزارهای نفوذ کننده به نرم افزارهای بانکی تلفن همراه اطلاعیه ای صادر کرد به گزارش وکیل ملت به نقل از مرکز ارتباطات و روابط عمومی بانک شهر بر اساس اعلام بانک مرکزی جمهوری اسلامی اطلاع رسانی در خصوص تهدید بدافزارهای نفوذ کننده به نرم افزارهایغیر قانونی بودن تبلیغات نرم افزارهای هک تلگرام در فضای مجازی
رئیس پیشگیری از جرائم سایبری پلیس فتا در خصوص غیر قانونی بودن تبلیغات آموزش و فروش نرم افزارهای هک تلگرام در فضای مجازی هشدار داد به گزارش خبرگزاری صداوسیما به نقل از پلیس فتا سرهنگ علیرضا آذردرخش افزود یکی از کاربردهایی که در فضای مجازی رشدی چشمگیر داشته و روز به روز بیشتر می«بیسفون» ایرانی قابلیت رقابت کامل با نرم افزارهایی مانند «تلگرام» را دارد
به گزارش پایگاه خبری فضای مجازی ایران فیمنا طی سالیان اخیر شاهد گسترش فزاینده نرم افزارهای شبکه های اجتماعی موبایلی مانند تلگرام لاین واتس اَپ اینستاگرام و … در داخل کشورمان بوده ایم به گونه ای که در حال حاضر روزانه چند صد نفر به تعداد کاربران ایرانی این شبکه ها افزوده می شودانلود فیلم آموزش نرم افزارهای جهانی ویندوز
شما در این دوره آموزشی با برخی از مهارت های عمومی وب نظیر جاوااسکریپت و همچنین توسعه وب با این زبان آشنا خواهید شد و می توانید تا با رفتن به مراحلی فراتر از مرورگر و ایجاد برنامه های جهانی کار کرده و بتوانید برای پلت فرم جهانی ویندوز نرم افزارهای خوبی را تهیه تولید نمایید این دودانلود HitmanPro v3.7.13 Build 257 x86/x64 - بهترین مکمل نرم افزارهای
با گسترش فایلهای مخرب ویروس بدافزارها در چند سال اخیر مسئله امنیت کاربران در فضای مجازی اهمیت زیادی پیدا کرده است و پیرو آن برنامههای امنیتی اعم از آنتی ویروسها و برنامههای ضد جاسوسی جان تازهای به خود گرفتند و امروزه نیاز به آنها بیش از هروقت دیگر حس میشود به طوریکه در18 ویژگی که نشان از برتری اندروید N بر مارشمالو دارند
18 ویژگی که نشان از برتری اندروید N بر مارشمالو دارند در حالی که گوگل تنها دو ویژگی تقسیم صفحهنمایش و بهبود وضعیت نمایش اعلانها را به صورت برجسته مورد توجه قرار داده است اما واقعیت این است که بهروزرسانیهای بسیاری همچون تنظیمات و ویژگیهای جدید به اندروید جدید افزوده شدهاندتبلیغات آموزش و فروش نرم افزارهای هک تلگرام غیرقانونی است
رئیس اداره پیشگیری از جرائم سایبری پلیس فتا ناجا در خصوص غیرقانونی بودن تبلیغات آموزش و فروش نرم افزارهای هک تلگرام در فضای مجازی به شهروندان هشدار داد عصر بانک سرهنگ علیرضا آذردرخش رئیس اداره پیشگیری از جرائم سایبری پلیس فتا ناجا گفت یکی از کاربردهایی که در فضای مجازی رشدی چشنرمافزارهای مدیریت ارتباط با مشتری؛ راهی برای شناسایی فرصتها
سهشنبه ۲۵ اسفند ۱۳۹۴ - ۱۳ ۲۹ شرکت تجارت الکترونیک اول از جمله شرکتهایی است که در حوزه فناوری اطلاعات و تجارت الکترونیک فعالیت دارد این شرکت فعالیت خود را از سال ۱۳۸۹ با تمرکز بر برقراری ارتباط بین دو بنگاه اقتصادی آغاز کرده و روی نرمافزارهای دیگری از جمله نرمافزار مدیریت ارتاستخدام کارشناس مهندس صنایع ،کاردان یا کارشناس فنی با پایه ی تحصیلی ریاضی ،دیپلم، کاردان و یا کارشناس، مسلط به
استخدام شرکت دکوراسیون داخلی در اصفهان در شرکت دکوراسیون داخلی واقع در اصفهان 1-کارشناس مهندس صنایع 2 -کاردان یا کارشناس فنی با پایه ی تحصیلی ریاضی و تسلط به نرم افزار های اکسل و اتوکد2 بعدی 3 -دیپلم کاردان و یا کارشناس مسلط به نرم افزارهای word و اکسل 4 -کارشناس معماری مسلط ب-
گوناگون
پربازدیدترینها