برنامه نویسی

توسعه نرم‌افزار فعالیتی است که از انواع پیشرفت‌های فناورانه استفاده کرده و نیازمند داشتن سطح بالایی از دانش است. چون هر پروژه توسعه نرم‌افزار شامل چندین پارامتر غیرقطعی است. پارامترهایی که اطمینان‌پذیر و پایدار نیستند، تکلیف برنامه‌نویس و توسعه‌دهنده با آن‌ها مشخص نیست و چند وجه مخالف هم دارند. ما این وضعیت را ریسک پروژه می‌نامیم. موفقیت یک پروژه نرم‌افزاری به‌طور کامل به میزان ریسکی بستگی دارد که در آن پروژه و فعالیت وجود دارد. به‌عنوان یک مدیر پروژه، نباید به آگاهی از ریسک‌های پروژه اکتفا کرده، بلکه برای دستیابی به یک نتیجه مطلوب باید تمام ریسک‌های اصلی پروژه را شناسایی، ارزیابی‌، اولویت‌بندی و مدیریت کرد.
زبان برنامه‌نویسی جولیا که نزدیک به 14 روز پیش (در زمان نگارش این مقاله) نسخه پایدار آن (1.0.2) منتشر شد، در مقایسه با زبان‌های برنامه‌نویسی رایج و محبوبی همچون پایتون عملکردی به مراتب انعطاف‌پذیرتر دارد. لازم به توضیح است که نگارش 1 این زبان در ماه اوت ارائه شد، زبانی که تیمی متشکل از برجسته‌ترین پژوهشگران دانشگاه MIT فرآیند توسعه آن‌را عهده‌دار بودند. یک زبان برنامه‌نویسی قدرتمند که به اعتقاد بسیاری از کارشناسان در آینده‌ای نه چندان دور به یکی از محبوب‌ترین زبان‌های برنامه‌نویسی تبدیل خواهد شد.
حقایق ناپیدا و تلخ برنامه‌نویسی که بیشتر به واقعیت نزدیک هستند
30 آبان 1397
‌به‌تازگی باوری در جامعه فناوری شکل‌گرفته که می‌گوید برای پیشرفت بیشتر همه باید برنامه‌نویسی یاد بگیرند؛ اما چنین ایده‌ای کمی‌ افراط‌گونه به نظر می‌رسد، زیرا کدنویسی نوع جدید سواد خواندن و نوشتن محسوب نمی‌شود. تب تبدیل‌شدن به ابر ثروتمندان دره سیلیکون جنبشی به نام «یادگیری برنامه‌نویسی» را به راه انداخته است. جوامع فناوری، سازمان‌های غیرانتفاعی مثل Code.org و حتی سیاستمداران این را به‌عنوان یک مهارت ضروری برای نیروی کار آینده تلقی می‌کنند. ممکن است چنین دیدگاهی از برخی جهات حقیقت داشته باشد، به‌ویژه آن‌که نیاز کشورهای توسعه‌یافته به این مهندسان هیچ نشانه‌ای از کند شدن را نشان نمی‌دهد؛ اما موضوع به همین‌جا ختم نمی‌شود و پیچیده‌تر از این‌ها است.
در میان متدولوژی‌های سبک‌وزن و چابکی که پیش روی تیم‌های برنامه‌نویسی قرار دارد، این متدولوژی XP است که سعی می‌کند ساده‌ترین راهکارها را برای ساخت و تولید یک سامانه نرم‌افزاری پیشنهاد دهد. مهم‌ترین مزیت این متدولوژی سهولت به‌کارگیری است. به عبارت دقیق‌تر، این متدولوژی شما را مجبور نمی‌کند از همان ابتدا فرآیند کدنویسی یا شبیه‌سازی را اجرا کنید، بلکه اجازه می‌دهد هر ماژول نرم‌افزاری را در زمان خودش پیاده‌سازی کنید.
یادگیری ماشین در عمل با پایتون
27 آبان 1397
اگر از شما این سوال پرسیده شود که در میان زبان‌های رایج برنامه‌نویسی که امروزه به کار گرفته می‌شوند کدامیک از آن‌ها به شما اجازه می‌دهند در سریع‌ترین زمان برنامه‌ای بنویسید که روی پلتفرم‌های مختلف قابل اجرا باشد چه جوابی می‌دهید؟ آیا جواب شما پایتون نخواهد بود؟ یکی از قابلیت‌های اعجاب‌برانگیز پایتون این است که اجازه می‌دهد روی یک پلتفرم برنامه خود را بنویسید، اما روی سایر پلتفرم‌ها آن‌ها اجرا کنید. اما فراتر از این مباحث، اگر از شما این سوال پرسیده شود که مناسب‌ترین زبان برای کار با الگوریتم‌های یادگیری ماشین چه زبانی است پاسخ شما چه خواهد بود؟ زبانی که به شما اجازه دهد بر مبنای یک ترکیب نحوی ساده اما انعطاف‌پذیر بتوانید الگوریتم‌های یادگیری ماشین را پیاده‌سازی کنید.
راهنمای شروع به کار با زبان برنامه‌نویسی Kotlin
13 آبان 1397
کوتلین، یک‌زبان برنامه‌نویسی همه‌منظوره و منبع باز است که قابلیت‎های شی‌گرا و توابع کاربردی را باهم ترکیب کرده است. از کوتلین (Kotlin) برای ساخت اپلیکیشن‎های ماشین مجازی جاوا (JVM)، اندروید، مرورگر و اپلیکیشن‎های مستقل MacOS، لینوکس، ویندوز، iOS, WebAssembly و اندروید استفاده می‌شود. کوتلین توسط شرکت JetBrains ایجاد و تحت مجوز Apache 2 به‌صورت منبع باز منتشر شد.
زبان پایتون برای چه کارهایی مناسب نیست
05 آبان 1397
پایتون یکی از معروفترین زبانهای برنامه نویسی سالهای اخیر است. ساختار دستوری ساده و واضح آن باعث شده تا پایتون به یک زبان کدنویسی ایدهال برای تازه کاران تبدیل شود. قابل انکار نیست که یادگیری پایتون با توجه به موارد استفاده گسترده آن به یک ضرورت تبدیل شده است. به همین دلیل این سوال نیز مطرح می‌شود که چه زمانی پایتون نمی‌تواند پاسخگوی مسئله شما باشد؟ در چه شرایطی زبان برنامه نویسی پایتون را نباید یاد گرفته و استفاده کرد؟
تاکنون از خود سوال کرده‌اید سامانه‌های سازمانی در مقیاس وسیع چگونه طراحی می‌شوند؟ سیستم‌عاملی که امروزه از آن استفاده می‌کنید، چطور ساخته‌شده است؟ در پاسخ به پرسش‌های فوق باید بگوییم پیش از آن‌که فرآیند توسعه نرم‌افزارها آغاز شود، تیم‌های نرم‌افزاری ابتدا الگوی معماری نرم‌افزار متناسب با پروژه خود را انتخاب می‌کنند تا اطمینان حاصل کنند محصول نهایی از کیفیت بالایی برخوردار خواهد بود و در هیچ‌کدام از مراحل توسعه تیم مجبور نخواهد شد. به‌واسطه یک تصمیم اشتباه به عقب بازگشته و همه‌چیز را از ابتدا آغاز کند. در این مقاله قصد داریم رایج‌ترین الگوهای معماری نرم‌افزار را که در حال حاضر از سوی سازمان‌های بزرگ به کار گرفته می‌شوند، به شما معرفی کنیم.
دنیای نرم‌افزار با طیف گسترده‌ای از متدولوژی‌های نرم‌افزاری احاطه‌شده که برخی از این مدل‌ها بنیادین بوده و در حقیقت زیربنایی برای مدل‌های پس از خود شده‌اند. زمانی‌که صحبت از متدلوژی‌های نرم‌افزاری به میان می‌آید، کمتر منبعی را پیدا می‌کنید که اشاره‌ای به مدل آبشاری نداشته باشد. درحالی‌که قدمت این مدل توسعه نرم‌افزار بالا است، اما هنوز هم از سوی شرکت‌ها به کار گرفته می‌شود.
در دهه حاضر، شرکت‌های تجاری و کسب‌وکارها، بدون نرم‌افزارهای مدیریت پروژه نمی‌توانند از پس کارها و جزئیات زیاد تولید یک محصول، ارائه یک سرویس و اتمام یک پروژه برآیند. هریک از این امور نیازمند همکاری و هماهنگی چندین کارمند یا تیم‌های کاری، کنترل و مدیریت انبوهی از کارهای ریزودرشت به همراه جزئیات فنی و طراحی فراوان و درعین‌حال، مدیریت و برنامه‌ریزی زمان است. کسب‌وکارها و به‌طور ویژه استارتاپ‌ها سعی می‌کنند برای تسریع در فرآیند تولید محصول و رسیدن به‌چابکی بیشتر و البته جبران کمبود نیروهای انسانی؛ بر اساس یک چارچوب توسعه نرم‌افزار یا مدیریت پروژه پیش بروند. اسکرام (Scrum) یکی از معروف‌ترین چارچوب‌ها و سیستم‌های توسعه نرم‌افزار و پیشبرد پروژه‌ها است.

صفحه‌ها

اشتراک در برنامه نویسی