طراحی سایت | برنامه نویسی

آموزش طراحی سایت و برنامه نویسی

طراحی سایت | برنامه نویسی

آموزش طراحی سایت و برنامه نویسی

۱۲۰ مطلب در تیر ۱۳۹۸ ثبت شده است

۲۳تیر

وقتی صحبت از پلتفرم های اندروید و ios می شود، انتخاب پلتفرمی مناسب برای ساخت اپلیکیشن های موبایل می تواند کار سختی باشد. طبق یک مطالعه ۲۳ درصد از کاربران وقتی تنها یک بار از برنامه ای استفاده می کنند، آن را حذف می کنند. این چیزی است که باید در زمان طراحی و توسعه برنامه موبایلی خود در نظر بگیرید. موبایل ها به بخش اصلی از زندگی کاربران تبدیل شده اند، به همین دلیل انتظارات کاربران تا حد زیادی افزایش یافته است.

android-vs-ios-featured

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

۵ فاکتور برای انتخاب بین توسعه اندروید و ios

با وجود اینکه هر دو پلتفرم از مزایا و معایب خود برخوردار هستند، برای تصمیم گیری به منظور انتخاب از بین این دو پلتفرم ۵ فاکتور مهم را در این مقاله بررسی می کنیم :

مخاطبین هدف

target-Audience

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

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

جدول زمانی

timeline

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

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

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

ویژگی های مطلوب

desired-features

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

علاوه بر این، پلتفرم های توسعه تلفن همراه باید دارای قابلیت های احراز هویت قوی و ذخیره سازی داده ها بوده و ادغام آنها با سرویس‌های شخص ثالث ساده باشد.

بودجه بندی برنامه

budgeting-the-app

تقریبا ۲۰ درصد از توسعه دهندگان در مورد بودجه بندی برای یک برنامه گفته اند که کمبود بودجه یکی از فاکتورهای مهم آنها برای انتخاب پلتفرم مورد نظر آنها بوده است. توسعه برنامه ای با یکی از پلت فرم های اندروید یا ios به مراتب ارزان تر از زمانی است که برنامه را برای هر دو سیستم عامل توسعه می‌دهید.

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

اهداف درآمدی

revenue-goal

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

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

توسعه با اندروید و یا ios کدام بهتر است؟

در این روزها سیستم عامل های اندروید و ios دو سیستم عامل خوب برای توسعه برنامه های موبایلی هستند. حدود ۷۵ درصد از مردم از اندروید استفاده می کنند، این در حالی است که ۱۹ درصد از مردم از ios استفاده می کنند. بنابراین بدون شک اندروید برنده این بازی است و توسعه برنامه های اندروید در جهان در حال افزایش است.

به طور متوسط ۹۶ درصد از کل بازار موبایل در اختیار این دو پلتفرم است، با وجود اینکه می توان برنامه ای را برای هر دو سیستم عامل توسعه داد اما به دلایلی در اکثر مواقع یکی از این دو پلتفرم انتخاب می شود :

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

کلام پایانی

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

منبع: لرن سورس
شهربانو دوستی
۲۳تیر

جاوا اسکریپت بر وب فرمانروایی می کند. اگرچه این اظهارنظر ممکن است جای بحث داشته باشد اما بسیار روشن است که این زبان در حال حاضر در هر جایی از وب دیده می‌شود. بر اساس نظرسنجی های انجام شده توسط سایت Stack Overflow در سال ۲۰۱۸ زبان جاوا اسکریپت رایجترین زبان میان توسعه دهندگان بوده است. بیش از ۷۰ درصد از 78 هزار نفر پاسخ دهنده سایت Stack Overflow کدهای خود را به زبان جاوا اسکریپت می نویسند.

Angular

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

frameworks-employers-need

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

آنگولار چیست؟

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

فریمورک آنگولار همچنین برای توسعه برنامه های موبایل و اپلیکیشن های دسکتاپ استفاده می شود. برای مثال Ionic یک پلتفرم قدرتمند برای توسعه اپلیکیشن‌های کراس پلتفرم موبایل است، که به وسیله ی آنگولار ساخته شده است. تیم آنگولار در گوگل از سال ۲۰۰۹ تاکنون نسخه های مختلفی از این فریمورک را منتشر کرده‌اند.

AngularJS اولین نسخه این فریمورک برای ساخت اپلیکیشن های single page داینامیک بود. معمولا از واژه جایگزین برای “Angular” برای نسخه ۲ و نسخه های بعدی از این فریمورک استفاده می شود. آنگولار تنها یک بروزرسانی نبود بلکه کاملاً AngularJS را بازنویسی کرد و در نسخه های جدید این فریم ورک قابلیت های جدیدی مانند معماری کامپوننت ها، قواعد نوشتاری متفاوت، ماژولار بودن، زبان TypeScript، بارگذاری پویا و ... به چشم می‌خورد.

بسیاری از اپلیکیشن های مشهور وب مانند Eat24 ، Radio.com ، Udacity ، Freelancer ، Crunchbase ، NBA.com و Google Express همگی با آنگولار ساخته شده اند. با حجم محصولاتی که در این فریمورک ایجاد شده است و پشتیبانی قوی شرکت گوگل از این فریمورک می توان حدس زد که محبوبیت این فریمورک به این زودی ها کاهش پیدا نمی کند.

بر اساس آماری از سایت Stack Overflow در سال ۲۰۱۸ آنگولار دومین زبان محبوب و پر استفاده در بین توسعه دهندگان بوده است.

مزایای فریمورک آنگولار

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

  • استفاده از TypeScript : اگرچه آنگولار به عنوان فریمورکی از جاوا اسکریپت در نظر گرفته می شود اما بر مبنای TypeScript است. TypeScript یک ابر مجموعه برای جاوا اسکریپت محسوب می‌شود. کد نوشته شده در TypeScript به آسانی به جاوا اسکریپت کامپایل می شود. TypeScript در مقایسه با جاوا اسکریپت دارای مزایای فوق العاده ای است. برای مثال قابلیت شناسایی خطاها در زمان تایپ یک قابلیت ستودنی برای TypeScript است که به توسعه دهندگان فرصت جبران خطاها را میدهد.
  • پایداری و استحکام : تمام نسخه های ۲ به بعد در آنگولار نسبت به نسخه های قبلی خود دارای پایداری و ثبات هستند و این یعنی به سادگی می توانید پروژه خود را بدون تغییر در کد ها به نسخه های جدیدتر این فریم ورک ارتقا دهید. علاوه بر این آنگولار از گوگل قدرت گرفته است که به قابلیت ثبات و پایداری فریمورک توجه ویژه‌ای دارد.
  • ماژولار بودن : یک برنامه آنگولار در ماژول های مختلف سازماندهی می‌شود و این یعنی کد شما دارای ماژول های جداگانه ای است که هر کدام مسئول توابع مختلفی هستند. می توانید ماژول هایی از پکیج های آنگولار را استفاده کنید و یا خودتان ماژول ها را بنویسید یا از کامپوننت های آماده ای که توسط جامعه توسعه دهندگان آنگولار منتشر می‌شود استفاده کنید.
  • سازگاری در کد : طبیعت کامپوننت محور بودن اپلیکیشن‌های آنگولار سازماندهی و نگهداری کدها را ساده‌تر می‌کند. این کامپوننت ها دارای قابلیت استفاده مجدد هستند برای مهندسانی که با کدهای شما آشنایی ندارند، خوانا هستند.
  • آزمایش آسان‌تر : انجام آزمایش و تست بر روی سیستم های ماژولار ساده تر است. علاوه بر این تکنولوژی های مختلفی برای تست برنامه های آنگولار وجود دارد برای مثال Protractor برای تست های end-to-end ایده آل بوده و Karma برای تست های واحد مناسب است.
  • کراس پلتفرم : از آنگولار می‌توان برای توسعه اپلیکیشن های مختلف مانند وب، native و موبایل استفاده نمود. علاوه بر این به شما اجازه ساخت برنامه های pwa را نیز می دهد.
  • جامعه پشتیبانی کننده : آنگولار در میان توسعه دهندگان به شدت محبوب است و جامعه بزرگی دارد. این جوامع را می‌توان در Stack Overflow و گروه های LinkedIn پیدا کرد.

نتیجه

جاوا اسکریپت یک زبان چند منظوره است که برای همه چیز استفاده می شود. برای مثال می توانید از این زبان در front end ، back end و موبایل و افزونه های مرورگر استفاده کنید. بدون شک آنگولار یکی از قدرتمند ترین فریمورک های جاوا اسکریپت است این فریمورک را دارای فهرستی از مزایای مختلف استو به وسیله گوگل پشتیبانی می‌شود. جامعه این فریمورک نیز بسیار بزرگ است، در نتیجه می توانید پاسخ سوالات خودتان را سریعاً به بیابید. 

#فریمورک جاوااسکریپت #فریمورک آنگولار
شهربانو دوستی
۲۳تیر

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

programmer

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

ممکن است برایتان این سوال پیش آمده باشد که روند هایی که باید دنبال کنم چه هستند و چگونه میتوانم آنها را دنبال کنم؟ من برخی از موارد مرتبط را پیدا کرده ام و آنها را در زیر فهرست کرده ام. بیایید نگاهی به آنها بیندازیم :

توسعه وب

اگر زمینه اصلی کار شما توسعه وب است و می خواهید در بالاترین سطح قرار گیرید ، سه گام جدید برای تمرکز در سال 2019 وجود دارد، که در زیر به آنها اشاره کرده ام :

Vue.js

اگر مسیرتان را در جاوا اسکریپت میبینید، احتمالا تا حدودی با Vue.js آشنا هستید . این فریمورک در سال 2014 منتشر شد و اکنون به طور باورنکردنی محبوب است، و این محبوبیت عمدتا به دلیل این است که این فریمورک سریع، سبک و قابل اطمینان است. موضوع جالبی که در مورد این فریمورک وجود دارد این است که توسط یک نفر ایجاد شده است.

در حال حاضر، با توجه به Packt Hub، مزایای متعددی برای استفاده از Vue.js وجود دارد :

  • بر خلاف برخی از فریمورک های دیگر، یادگیری Vue.js بسیار آسان است و دارای مستندات گسترده ای است که تمام موارد پایه ای را پوشش میدهد. با یادگیری این فریمورک سبک وزن، قادر خواهید بود سریعتر و راحت تر برنامه های خود را نسبت به زمانی که از Angular و React استفاده میکنید، ایجاد کنید.
  • Vue.js کاملا انعطاف پذیر است، بنابراین شما می توانید از هر کتابخانه ای استفاده کنید، برای مثال میتوانید از Vuex و vue-router استفاده کنید. اگر شما اینها را دوست ندارید، می توانید Redux یا حتی JSX را انتخاب کنید.
  • فریمورک Vue.js یکی از کوچکترین و سریعترین فریمورک هاست که نیازی به بهینه سازی ندارد و انتظارات برنامه نویسان را رفع میکند.
  • مهمتر از همه، Vue.js دارای یک جامعه اختصاصی و وفادار است که به طور مداوم در تکامل و پیشرفت این فریمورک نقش ایفا میکنند.

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

وقتی که صحبت از برنامه نویسی تابعی به میان می آید، اکثر مردم به دو دسته تقسیم می شوند. دسته ای آن را دوست دارند و دسته ای دیگر از آن متنفر هستند. مدافعان این روش ادعا می کنند که این روش واضح تر و کارآمدتر از برنامه نویسی شی گراست.

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

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

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

  • توابع Arrow
  • وسعت Object/array
  • Async/await

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

افزونه های مرورگر

تقریبا تمام مرورگرهای بزرگ وب دارای گزینه ای برای نصب افزونه (چیزی که موزیلا فایرفاکس آن را add-ons مینامد) بر روی خود هستند. افزونه ها بخش های فوق العاده مفیدی هستند که اجازه می دهد تا تغییرات مختلفی را در تجربه کاربری برای یک وب سایت به وجود آورید. به عنوان مثال، یکی از محبوب ترین افزونه ها AdBlock است که به خوبی می تواند تبلیغات مزاحم را در مرورگر شما متوقف کند.

جالب است که این افزونه ها به طور مداوم سازگاری را بهبود می بخشند، و این یعنی افزونه های ایجاد شده برای Google Chrome نیز ممکن است در موزیلا فایرفاکس استفاده شوند. در این مورد موزیلا از گوگل کروم جلوتر است. با استفاده از API WebExtensions ، می توانید به سادگی کد های خود را به مرورگرهای دیگر منتقل کنید. احتمالا این سازگاری در سال 2019 بهبود خواهد یافت.

توسعه نرم افزار

در صورتی که شما یک توسعه دهنده نرم افزار هستید، نکاتی وجود دارد که در سال 2019 باید مراقب آنها باشید.

بلاکچین

جای تعجب ندارد که بلاکچین هنوز هم یکی از محبوب ترین فن آوری های جهان است. بلاکچین لیستی از رکورد هایی است که "blocks" نامیده می شوند و  با هم مرتبط و رمزنگاری شده اند. از آنجا که داده های بلاکچین را نمی توان تغییر داد و هر بلوک رمزنگاری می شود، این تکنولوژی برای رمزنگاری بسیار مناسب است. از طرفی تقاضا برای توسعه دهندگان Blockchain در سراسر جهان میزان بالایی است.

blockchin

اینترنت اشیا

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

امنیت سایبری

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

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

نگرانی عمده برای اکثر کارشناسان این است که حملات سایبری با کمک AI(هوش مصنوعی) اتفاق می افتد که یک روند خطرناک است و بسیاری از شرکت های امنیتی مجبور به مبارزه با آن خواهند شد. برنامه نویسان باید در نظر بگیرند که تا چه میزان می توانند یاد بگیرند و درگیر شوند چرا که IoT یک صنعت عمده است و نیاز دارد در آن حرفه ای باشید.

خودتان را برای آینده آماده کنید

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

#یادگیری #برنامه نویسی تابعی

منبع: لرن سورس

شهربانو دوستی
۲۳تیر

طبق آمار اعلام شده در سال 2019،حدود 1.6 میلیارد وب سایت فعال وجود دارد و با رشد کسب و کارها و الکترونیکی شدن آنها این تعداد با سرعت زیادی در حال افزایش است. در حالی که هر کسی می تواند وب سایتی را ایجاد کند، ولی قطعا شما میخواهید وب سایتتان موفق شود. هیچ فرمول جادویی وجود ندارد که بتواند اطمینان دهد همه افراد بلافاصله از سایت شما بازدید خواهند کرد. اما استراتژی هایی وجود دارد که میتواند تا حدود زیادی به این روند کمک کند.

web

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

1. وب سایت شما باید طراحی واضح و تمیزی داشته باشد

دهه 1990 زمانی که وب سایت ها تازه شروع به کار کرده بودند را به یاد می آورید؟ در آن زمان سایت ها پر از متن بودند و در جاهای گاهی ازتصاویر نه چندان جذابی استفاده شده بود. اکنون همه چیز تغییر کرده است. اکثر کاربران می خواهند یک طراحی تمیز داشته باشند و انتظار دارند اطلاعات با تصاویری زیبا به آنها منتقل شوند.

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

متن بیش از حد باعث می شود که کاربران دربازدید از وب سایت شما صرف نظر کنند. درباره فایلهای PDF بیشتر تحقیق کنید و از آنها استفاده کنید. خیلی از کاربران دوست دارند اطلاعات را در کامپیوتر خود دانلود کنند و سپس آن را مطالعه کنند.

2.وب سایت شما باید سرعت بارگذاری بالایی داشته باشد

بگذارید مجددا به دهه 1990 برگردیم. به خاطر می آورید برای بارگذاری برخی صفحات به 10 دقیقه زمان نیاز داشتید؟ این زمان برای بارگذاری یک صفحه از یک سایت در دوره کنونی دیوانه کننده است. وب سایت شما باید در سریعترین زمان و بدون هیچ مشکلی بارگذاری شود.

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

3. سایت شما باید واکنش گرا باشد

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

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

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

4.یک وب سایت موفق حرفه ای است.

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

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

5.وب سایت شما باید اطلاعاتی داشته باشد که مشتری به آن نیاز دارد

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

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

داشتن یک سایت موفق

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

#واکنش گرا #سرعت بارگذاری

منبع: لرن سورس

شهربانو دوستی
۲۳تیر

اگر از دور به آنچه در فضای توسعه وب اتفاق می افتد، توجه داشته باشید، حتما تاکنون فهمیده اید که Node.js بسیار محبوب شده است و توسط بسیاری از توسعه دهندگان backend مورد استفاده قرار میگیرد. استفاده از Node.js در سال 2009 توسط رایان دال آغاز شده است. Node.js یک زمان اجرای جاوا اسکریپت است که بر مبنای موتور V8 جاوا اسکریپت گوگل کروم ساخته شده است.

nodejs

طی سالیان گذشته مهندسان و توسعه دهندگان هر چه بیشتر پروژه های خود را به این محیط اجرای محبوب منتقل کرده اند. با توجه به اینکه مردم زیادی از Node.js استفاده میکنند، پس بیاییم ببینیم چگونه Node.js توسعه وب را تغییر داده است؟

مقیاس پذیری

مقیاس پذیری چیزی است که Node.js را بسیار محبوب کرده است. Node.js همه چیز را در یک thread اجرا می کند و این thread بر مبنای رویداد هاست (زیرا با زبان جاوا اسکریپت نوشته شده است) و دارای قابلیت non-blocking است (برای آشنایی با قابلیت none-blocking کلیک کنید).

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

در مقابل، دربرنامه هایی که از نود استفاده میکنند، به دلیل طبیعت non-blocking بودن رویداد ها، به شما اجازه خواهد داد که تا جای ممکن برنامه شما مقیاس پذیر باشد. با استفاده از Node.js شرکت هایی که در تلاش هستند برنامه های مقیاس پذیری تولید کنند که با کمترین افت سرعت همراه باشد، میتوانند با خیال راحت به ساخت برنامه خود ادامه دهند. آنها نیاز ندارند فضای بیشتری را برای برنامه خود از شرکت های سرویس دهنده خریداری کنند.

استفاده آسان

همانطور که قبلا ذکر شد، Node.js با زبان جاوا اسکریپت نوشته شده است. تاکنون زبان جاوا اسکریپت همیشه برای اضافه کردن قابلیت های ظاهری به برنامه ها استفاده میشد. اما با به میدان آمدن Node.js، هم اکنون می توانید کل برنامه خود را به زبان جاوا اسکریپت بنویسید.

از طرفی با این کار، توسعه دهندگان front-end خیلی راحت تر میتوانند کد هایی که در سمت سرور وجود دارند را ویرایش کنند، چرا که از قبل با زبان جاوا اسکریپت آشنا هستند و نیاز ندارند به زبان دیگری تسلط داشته باشند. توسعه دهندگان back-end نیز با مشکلات کمتری سر و کار خواهند داشت. سر و کار داشتن با یک زبان واحد وقتی بخواهید یک توسعه دهنده ی Full Stack باشید از اهیمت بالایی برخوردار است.

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

جامعه متن باز

هنگامی که نود منتشر شد، NPM، مدیریت کننده پکیج های نود در اختیار عموم قرار داده شد. با استفاده از NPM به توسعه دهندگان اجازه میدهید به سرعت از کتابخانه ها و فریمورک های شخص ثالث در کد خود استفاده کنند. اگر از نود در برنامه خود استفاده میکنید تنها چیزی که نیاز دارید یک بسته است که در برنامه خود نصب کنید. با این کار توسعه برنامه خود را تا حد ممکن ساده تر کرده و وظایف بزرگتر را خودکارسازی خواهید کرد.

بسته هایی وجود دارد که از آنها میتوانید برای ایجاد سرور HTTP، پردازش تصویر و تست های واحد استفاده کنید. اگر شما به چیزی نیاز داشته باشید، قطعا چیزی برای آن ساخته شده است. بخش بسیار جذاب تر در مورد این جامعه این است که روز به روز افزایش پیدا می کند و مردم با ساخت بسته های متنوع به کمک توسعه دهنگان می آیند.

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

کمک به بخش توسعه front-end

با انتشار Node.js  نه تنها توسعه دهندگان بخش back-end از آن سود بردند، بلکه توسعه دهندگان front-end نیز از آن بهره مند شدند. چارچوب های جدیدی که می توانند در بخش ظاهری مانند React.js استفاده شوند، همگی با استفاده از npm قابل نصب هستند. 

نتیجه

Node.js قطعا توسعه وب را بهتر کرده است. با استفاده از این محیط اجرا میتوان با یک زبان تمام وظایف محوله را انجام داد و این کار بهره وری را افزایش میدهد. پس منتظر چه هستید؟ آیا دوست ندارید مولدتر باشید؟ به شما توصیه میکنم حتما از Node.js استفاده کنید.

#مقایس پذیری #Node.js

منبع: لرن سورس

شهربانو دوستی
۲۳تیر

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

android

به طور کلی دستگاه های Android عموما بر اساس ویژگی های سخت افزاری تلفن همراه متفاوت هستند (حتی زمانی که از سیستم عامل اندروید یکسانی استفاده میشود) به همین دلیل است که توسعه دهندگان در زمان توسعه برنامه های اندروید باید دستگاه های مختلف تلفن همراه را که قرار است نسخه های مختلف این سیستم عامل بر روی آنها نصب شود، در نظر داشته باشند.

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

 آنها همچنین باید به دنبال روش هایی باشند که برنامه تولید شده برای کاربران سفارشی تر باشد. علاوه بر این، توسعه دهندگان نیاز دارند که راه حل هایی را برای چالش های مشترک در برنامه های تلفن همراه اندرویدی ارائه دهند.
چالش های رایجی که توسعه دهندگان برنامه های اندروید با آن مواجه هستند.

1.ویژگی های سخت افزاری

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

برای مثال دو گوشی هوشمندی را در نظر بگیرید که هر دو از آخرین نسخه اندروید استفاده میکنند. ممکن است این دو دستگاه در رزولوشن صفحه نمایش، دوربین، اندازه صفحه نمایش و سایر ساختارهای سخت افزاری کاملا با هم متفاوت باشند ولی بدون هیج مشکلی سیستم عامل اندروید بر روی آنها نصب شده است. در طول توسعه برنامه اندروید، توسعه دهندگان باید تمام این موارد را درنظر بگیرند تا اطمینان حاصل شود که برنامه تجربه شخصی یکسانی را برای کاربران مختلف ارائه میدهد.

2.فقدان قوانین طراحی رابط کاربری یکسان

از آنجایی که گوگل هنوز قوانین طراحی یا UI (رابط کاربری) استانداردی را برای برنامه نویسان تلفن همراه منتشر نکرده است، اکثر توسعه دهندگان از هیچ قاعده یا روش توسعه ی استانداردی استفاده نمیکنند و از آنجایی که توسعه دهندگان، رابط های کاربری را به شیوه ای که میخواهند توسعه میدهند، بسیاری از برنامه ها ممکن است در دستگاه های مختلف متفاوت به نظر برسند.

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

طراحی رابط کاربری که بتواند در طیف گسترده ای از دستگاه های تلفن همراه یکسان به نظر برسد یکی از چالش هایی است که توسعه دهندگان برنامه های اندروید با آن رو به رو هستند.

3.ناسازگاری API

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

برخی از API ها برای یک نسخه های خاص اندروید ایجاد شده اند و بر روی دستگاه هایی که با نسخه دیگری از سیستم عامل اجرا میشوند، کار نخواهند کرد. توسعه دهندگان معمولا باید راه هایی را برای ایجاد یک API واحد بر روی تمام نسخه های اندروید پیدا کنند که خود میتواند چالش بزرگی باشد.

4.نقضان های امنیتی

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

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

5.دیده شدن در موتورهای جستجو

آخرین اطلاعات از Statista نشان می دهد که فروشگاه Google Play دارای بیشترین تعداد برنامه های تلفن همراه است. علاوه بر این، تعداد زیادی از کاربران اندروید برنامه های رایگان را نسبت به برنامه های پولی ترجیح می دهند؛ به همین دلیل توسعه دهندگان باید برنامه های تلفن همراه خود را ارتقا دهند تا تعداد دانلود خود را افزایش دهند.

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

منبع: لرن سورس
شهربانو دوستی
۲۳تیر

پلتفرم دات نت از شرکت مایکروسافت یک سکوی رایگان و متن باز بوده که برای ساخت انواع مختلف برنامه ها استفاده می شود. با استفاده از پلتفرم دات نت می توانید از زبانهای مختلف همچون سی شارپ، #F و ویژوال بیسیک، کتابخانه ها، ویرایشگر هایی برای ساخت وب، موبایل، دسکتاپ، بازی های کامپیوتری و برنامه های IOT استفاده کنید.

Feature_Large

جامعه متن باز پلتفرم دات نت بسیار بزرگ است. نزدیک به ۵۰ هزار توسعه دهنده از بیش از ۳۷۰۰ کمپانی خارج از شرکت مایکروسافت در این جامعه حضور دارند. برای ساخت برنامه های سمت سرور، پلتفرم دات نت از دو نوع پیاده سازی پشتیبانی می کند : NET Framework. که از سال‌های قبل تاکنون وجود داشته است و NET Core. که اخیراً ارائه شده است.

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

VS-Trend

کارائی

وقتی برای یک برنامه کارایی و مقیاس پذیری اولویت اول باشد، کدام یک از پلتفرم های NET Framework. و NET Core. می تواند برنده این میدان باشد؟

کارآیی برای پلتفرم NET Core. یک مزیت بزرگ است. کد های کامپایل شده در پلتفرم NET Core. به صورت خودکار بهینه سازی می شوند، بدون اینکه شما نیاز داشته باشید تغییری در کد خود به وجود آورید. قابلیت دوباره کامپایل شدن این پلت فرم کد ها را به صورت مستقیم بهینه سازی می کند. بنابراین کارایی برنامه شما تا حد زیادی افزایش می یابد.

بر اساس آزمایشات و مطالعات انجام شده توسط یک موسسه معتبر عملکرد و کارایی پلتفرم دات نت ۸۵۹ بار سریعتر از رکوردهای کارایی ثبت شده قبلی است. این نتیجه فوق العاده اثبات می‌کند که پلتفرم  NET Core. برای باقی ماندن به میدان آمده است. پس استفاده از این پلتفرم را به شما توصیه می کنیم.

پلتفرم NET Core. در مقایسه با پلتفرم NET Framework. ذاتاً قدرتمندتر، سریع‌تر، انعطاف پذیر تر و امن تر است. به لطف پکیج های NuGet پلت فرم NET Core. بسیار سبک وزن است، در نتیجه کارایی در این پلتفرم بسیار بالاست.

با وجود تمام اوصافی که در بالا برای پلتفرم NET Core. ذکر شد، به این معنا نیست که فریمورک NET Framework. در پارامترهای کارایی بسیار عقب افتاده است. هنوز قابلیت ها و ویژگی هایی در پلتفرم NET Framework. وجود دارند که در پلتفرم NET Core. منتشر نشده اند و خیلی وقت ها به این قابلیت ها در پروژه خود نیاز دارید.

در اینجا پلتفرم NET Framework. نسبت به برادر کوچکتر خود بسیار قدرتمند تر عمل می کند. تکنولوژی هایی که هنوز در NET Core. وجود ندارند در شکل زیر آمده است :

Not-Available

مدل توسعه

یکی از مهم ترین قابلیت های در دسترس پلتفرم NET Core. مدل توسعه انعطاف پذیر آن است و این یعنی زمانی که آخرین نسخه این پلتفرم منتشر می شود، دستگاه‌های مختلف می‌توانند سریعاً خودشان را با این نسخه به روز رسانی کنند(بدون اینکه مشکلی در عملکرد دیگر برنامه ها به وجود آید).

Deployment-Model

وقتی نوبت به پلتفرم NET Framework. می رسد، برنامه های وب برای انتشار تنها می توانند بر روی IIS منتشر شوند، در حالی که برنامه های وب ساخته شده در NET Core. میتوانند به روش‌های مختلف میزبانی شوند. این رویکرد، پلتفرم NET Core. را بسیار انعطاف پذیر تر از برادر بزرگتر خود یعنی NET Framework. کرده است. 

تمرکز بر روی همه دستگاه ها

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

Multitude-of-Domain

هدف پلتفرم NET Core. از ابتدا این بوده است که بتوانند در حوزه های مختلف همچون بازی و برنامه های تلفن همراه و هوش مصنوعی حرفی برای گفتن داشته باشد. این پلتفرم  و نسخه های جدیدتر آن تمرکز خود را بر روی دستگاه های IOT، دستگاه های دسکتاپ و دستگاه هایی که از هوش مصنوعی استفاده می کنند قرار داده اند.

با انتشار نسخه ۳ از پلتفرم NET Core. ، مایکروسافت با کنایه به کاربران گوشزد کرده است که ممکن است پلتفرم NET Framework. را حذف کرده و IOT (اینترنت اشیا) را جایگزین آن کند. اما این اتفاق واقعاً رخ می دهد؟ 

البته شرکت مایکروسافت شفاف‌سازی کرده است که قصد جایگزین کردن پلتفرم NET Framework. قدرتمند خود را ندارد، با این حال آنها در حال برنامه ریزی برای انتشار نسخه هایی از این پلتفرم هستند که سازگاری را تا حد ممکن حفظ کند. به عبارتی دیگر به روز رسانی های NET Core. سریعتر منتشر می شود و از این طریق می توان پیکربندی های side-by-side را انجام داد. 

قصد مایکروسافت برای ورود به حوزه هوش مصنوعی را می توان از همکاری های اخیر این شرکت با SWIFT (رهبر جهان در خدمات مالی مطمئن) اثبات کرد. امروزه همه شرکت ها برای ادغام چنین اجزایی در برنامه های خود سرمایه گذاری می کنند.  بنابراین اگر شما قصد دارید برنامه خود را با جدیدترین تکنولوژی ها بسازید پلتفرم NET Core. برای شما یک انتخاب عالی خواهد بود.

اگر از کتابخانه‌های رایگان استفاده می‌کنید، می‌توانید از میلیون‌ها پکیج خصوصی و عمومی بر روی NuGet و MyGet استفاده کنید. شما همچنین می توانید با استفاده از IDE و یا CLI آن ها را در برنامه‌های خود ادغام کنید.

سازگاری با انواع پلتفرم ها (Cross-Platform) 

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

وقتی نوبت به سرویس های توسعه وب در دات نت می رسد، پشتیبانی در تمامی پلتفرم ها به یک ضرورت تبدیل می شود و البته پلتفرم NET Core. کاملاً Cross-Platform است و این یعنی توسعه برنامه ها در انواع پلتفرم های مکینتاش، لینوکس و ویندوز به راحتی انجام می پذیرد. پلتفرم NET Core. همچنین در رشد کسب و کارها موثر است، زیرا برنامه شما در انواع پلتفرم ها کار خواهد کرد.

به عبارتی دیگر این پلتفرم توسعه دهندگان را قادر می‌کند، تنها برای پلتفرم ویندوز برنامه تولید کنند. وقتی تصمیم می گیرید برنامه‌ای را تولید کنید، قطعاً پلتفرمی که کاربران شما بر روی آن فعالیت می‌کنند، بسیار اهمیت دارد. استفاده از پلتفرم NET Core. شما را قادر می کند برنامه‌های خود را در انواع پلتفرم ها اجرا کنید. اما اگر هدف شما تنها سیستم عامل ویندوز است پلتفرم NET Framework. می تواند برای شما کافی باشد. 

هزینه ها

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

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

NET Framework. و NET Core. تقابل بین دو نسل

زمانی که تازه می‌خواهید یک پروژه جدید را شروع کنید، مطمئناً اینکه از چه چارچوبی استفاده کنید که نیازهای پروژه شما را برطرف کند ارزش فکر کردن دارد. 

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

با توجه به مطالب گفته شده در بالا همچنان انتخاب از میان این دو پلتفرم کار آسانی نیست و این کاملاً به نیازمندی‌های پروژه شما بستگی دارد. با این وجود تصمیم با شماست می توانید از هر کدام که می خواهید استفاده کنید. 

منبع: لرن سورس

شهربانو دوستی
۲۳تیر

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

website-Speed

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

 در ژانویه سال ۲۰۱۸ شرکت گوگل اعلام کرده است که سایت های بهینه سازی شده برای تلفن همراه برای دستیابی به موقعیت های برتر در فهرست نتایج بسیار اثرگذار است. بوت استرپ اغلب به خاطر افزودن موارد اضافی به وب سایت ها مورد انتقاد قرار گرفته است. بنابراین اگر از این فریمورک محبوب در پروژه خود استفاده می کنید به وزن و سرعت صفحه خود توجه بیشتری داشته باشید.

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

تنها بسته هایی از بوت استرپ که به آن نیاز دارید را دانلود کنید

اگر تصمیم دارید با پکیجهای از قبل کامپایل شده بوت استرپ کار کنید، باید جداً در مورد قسمت هایی از این کتابخانه که به آن نیاز دارید فکر کنید. فولدر دانلود شده شامل کتابخانه های css مورد نیاز و کتابخانه های جاوا اسکریپتی برای کامپوننت هایی است که می توانید در صفحات وب از آن استفاده کنید.

اگر شما به کدهای از css برای ریست کردن استایل پروژه خود نیاز دارید می توانید به سادگی از bootstrap-reboot.min.css استفاده کنید.

اگر به یک سیستم شبکه بندی فوق العاده آسان نیاز دارید، می توانید از bootstrap-grid.min.css استفاده کنید. نیاز نیست همه این فایل های این کتابخانه را دانلود کنیم. به عبارتی دیگر شما باید بدانید که قرار است از چه چیزی در این کتابخانه استفاده کنید و حداقل مطمئن شوید از نسخه های فشرده سازی شده فایل های این کتابخانه استفاده می کنید.

به طور مشابه در کدهای جاوا اسکریپتی این کتابخانه از کامپوننت هایی که به آنها نیاز دارید، استفاده کنید. برای مثال اگر می خواهید از dropdowns ،popover و tooltip در پروژه خود استفاده کنید، به جای استفاده از فایل bootstrap.min.js می توانید از bootstrap.bundle.min.js استفاده کنید.

از سورس ها به جای بسته‌های دانلودی از پیش کامپایل شده استفاده کنید

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

مرورگر ها همچنان کد هایی که استفاده نمی شوند را دانلود می کنند که می تواند بر روی کارایی وبسایت شما تاثیر بگذارد. به خصوص اگر کاربران شما از اتصال شبکه ضعیفی برخوردار باشند. یک ایده بهتر دانلود سورس کد بوت استرپ است زیرا شما را قادر خواهد کرد دقیقا کامپوننت هایی که به آن نیاز دارید را به پروژه خود اضافه کنید. می توانید هر قسمت از کتابخانه را که مد نظر شماست سفارشی سازی کنید، بدون اینکه نیاز داشته باشید استایل ها را override کنید. 

از تکنیک‌های بهینه سازی اثبات شده در سمت کلاینت استفاده کنید

صرف نظر از مواردی که در بالا ذکر شد بهینه سازی وب سایتی که با استفاده از بوت استرپ ساخته شده است، هنوز نیاز به ملاحظاتی در قسمت جلوی وب سایت دارد. در زیر به برخی از موارد مهمی که می توانید برای بهینه سازی قسمت front-end از وبسایت خود استفاده کنید اشاره شده است : 

از کدهای کمتری در css و جاوا اسکریپت استفاده کنید

هر کاراکتری که در کدهای خود اضافه می‌کنید می‌تواند بر وزن صفحه شما تاثیر گذار باشد، بنابراین نوشتن کدهای مختصر و واضح در css و جاوا اسکریپت که همچنان خوانایی کد حفظ شده باشد می تواند تاثیر زیادی در بهینه سازی صفحات شما داشته باشد. 

از کد های تکراری و غیر قابل استفاده در css و جاوا اسکریپت پرهیز کنید. خیلی خوب است که کدهای خود را در ابتدای پروژه سازماندهی کنید. برای مثال استفاده از راهنماهای استایل میتواند به پروسه توسعه شما کمک کند و بر کیفیت بهتر کد های شما تاثیر بگذارد. ابزارهای مختلفی وجود دارد که می تواند در پاکسازی کد ها به شما کمک کند با استفاده از Lint و JSLint می توانید سند خود را برای خطاهای نوشتاری و کدهای غیرقابل استفاده بررسی کنید. 

فشرده سازی و الحاق کد های css و جاوا اسکریپت

یک گام بهینه‌سازی مهم برای یک وب سایت محدود کردن تعداد درخواست های HTTP است که برای رندر شدن محتوا انجام می دهد. هر درخواستی که به سمت سرور ارسال شده و پاسخی دریافت میشود، مدت زمانی را طلب خواهد کرد. در نتیجه می تواند تاثیر منفی بر روی تجربه کاربری وب سایت شما بگذارد. 

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

در استفاده از تصاویری که حجم زیادی را اشغال می کنند مراقب باشید

مهمترین قسمت از یک صفحه وب اغلب فایل های تصاویر آن است. البته فایل های ویدیویی و صوتی نیز در این روند تاثیر گذار هستند. بهینه سازی این فایل ها می تواند تأثیری خوبی بر سرعت وب سایت شما داشته باشند. بنابراین در این مورد به نکات زیر توجه کنید :

  • مطمئن شوید از فرمتی درست برای تصاویر خود در صفحات وب استفاده می کنید 
  • اکثر تصاویری که بر روی کامپیوتر شما موجود است برای وب سایت شما بهینه نیستند. میتوانید از ابزارهایی برای بهینه سازی این تصاویر استفاده کنید. برای مثال یک ابزار آنلاین مناسب برای بهینه سازی تصاویر سایت TinyPNG است که تصاویر را تا جای ممکن برای شما بهینه سازی می کند. 

نتیجه

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

#بهینه سازی #افزایش سرعت سایت #بوت استرپ
لرن سورس
شهربانو دوستی
۲۳تیر

زبان TypeScript یک زبان متن باز و کامپایلری بوده که به آسانی کدهای شما را به جاوا اسکریپت ساده تبدیل می کند. این زبان در ابتدا توسط شرکت مایکروسافت ایجاد شد، اما هم اکنون در سراسر جهان شرکت های مختلفی در توسعه آن سهیم هستند. هر کدی که بتوانید در جاوا اسکریپت بنویسید، در زبان تایپ اسکریپت نیز معتبر است.

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

چرا TypeScript 

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

ECMAScript مجموعه ای از مشخصات زبان اسکریپتی است که برای استاندارد سازی زبان جاوا اسکریپت ایجاد شده است. حتی با وجود اینکه ECMAScript 6 قابلیت های شی گرایی همچون کلاس ها را اضافه کرده است، هنوز مفاهیمی وجود دارد که در این نسخه دیده می شوند.

ES6-300x300

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

TypeScript چگونه کار میکند؟

در بالا بیان کردیم که قرار دادن قابلیت ها و تکنولوژی های جدید در موتورهای مرورگرها زمان‌بر خواهد بود. پس چطور مرورگرهای موجود، کدهای TypeScript را درک می کنند؟ پاسخ سوال ساده است. مرورگرها قرار نیست کدهای TypeScript را درک کنند. در واقع TypeScript یک زبان کامپایلری است که در انتها کدهای جاوا اسکریپت معمولی را تولید خواهد کرد. این عمل در اینجا انتقال کد نام دارد که توسط همه مرورگرها قابل درک است. 

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

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

یک مثال ساده از TypeScript

در این مقاله قصد نداریم که به شما TypeScript را آموزش دهیم. با این حال بیان یک مثال ساده می تواند در درک و آشنایی شما با این زبان تاثیرگذار باشد. در این مثال ساده به نحوه کار با جی کوئری خواهیم پرداخت.

دو روش برای دستیابی به ابزارهای TypeScript وجود دارد. یکی به وسیله npm و دیگری با استفاده از ویژوال استادیو. اگر شما از ویژوال استودیو نسخه ۲۰۱۷ و یا ۲۰۱۵ استفاده می کنید، کار شما بسیار ساده است. وقتی فایلی را با پسوند .ts در پروژه خود ذخیره می کنید، ویژوال استودیو به طور خودکار فایل های خروجی جاوا اسکریپت را برای شما تولید می کند.

بعد از نصب ابزارهای مناسب باید تعاریف نوع را نیز به منظور استفاده از انواع جی کوئری در TypeScript نصب کنید. اگر از ویژوال استودیو استفاده می کنید می توانید با استفاده از NuGet Package Manager به شکل زیر این کار را انجام دهید :

PM > Install-Package jquery.TypeScript.DefinitelyTyped

اکنون برای ایجاد فایلی با نام typescriptDemo.ts و نوشتن کدهای زیر در آن آماده شده اید :
tsdemo-screen

tsdemo-screen
کدهایی که در بالا با زبان تایپ اسکریپت نوشته شده است فرض می‌کنند که فایل html ایی به شکل زیر در پروژه وجود دارد :

tsdemo-screen

لطفاً به بالای فایل html توجه کنید. ما فایل اسکریپت را با نام typescriptDemo.js به صفحه اضافه کرده ایم(نه فایل typescriptDemo.ts). همانطور که گفتم بعد از ذخیره سازی فایلی با پسوند .ts ویژوال استودیو به طور خودکار برای شما فایل typescriptDemo.js را تولید خواهد کرد. در این فایل کد های ساده جاوا اسکریپت نوشته شده است و می تواند توسط هر مرورگری اجرا شود.

با نگاهی مختصر به محتوای typescriptDemo.ts خواهید دید که به راحتی از قابلیت‌های شی گرایی در فایل خود استفاده کرده ایم. برای مثال ما کلاسی به نام Movie داریم که دارای فیلدی با نام name_ است. همچنین متدی به نام ()Play داریم که با کلیک بر روی دکمه اجرا خواهد شد. مثال بالا بسیار ساده بود. با این حال فریمورک هایی همچون آنگولار از کدهای تایپ اسکریپت پیچیده‌تری برای پیاده سازی منطق برنامه استفاده می کنند.

نتیجه 

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

#تایپ اسکریپت

منبع لرن سورس

شهربانو دوستی
۲۳تیر

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

Programming-Mistakes

مواردی که در زیر آورده ام برای من کاملا به اثبات رسیده اند. توجه داشته باشید که ترتیب در موارد زیر اهمیتی ندارد.

۱. تلاش برای یادگیری همه چیز

توسعه نرم‌افزار دریای وسیعی از اطلاعات است. زبان های برنامه‌نویسی ، چارچوب‌ها ، کتابخانه‌ها و API های فراوانی در این دنیای بزرگ وجود دارد . علاوه بر همه این ها چیزهای جدیدی هرروزه به این ترکیب اضافه میشوند . من شخصا ً فکر می‌کنم که دانستن همه چیز غیر ممکن است . با این حال ما همه این مورد را دوست داریم امتحان کنیم.

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

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

۳ دلیلی که که نشان میدهد یادگیری همه چیز برای مبتدیان بد است

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

اختلال در یادگیری - یادگیری چیزهای مختلف در یک زمان به این معناست که باید مدام بین موضوعات مختلف جا به جا شوید . در این صورت یادگیری برخی مطالب به زمان های آینده موکول میشوند . فاصله ای که ممکن است در زمان یادگیری برای مطالب به وجود آید میتوان برای فرآیند یادگیری شما کاملا مضر باشد. پیوستگی در یادگیری از اهمیت زیادی برخوردار است.

از سرعت یادگیری شما میکاهد - یادگیری موضوعات مختلف در هما ابتدا سرعت شما را کاهش میدهد. علاوه بر این بر تمرکز شما نیز اثر گذار است.

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

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

من همه ی این حرف ها را برای سوزاندن عطش خود در یادگیری زبان ها و تکنولوژی ها نگفتم، اما به شدت توصیه میکنم نگرانی در مورد یادگیری همه چیز را از ذهن خود پاک کنید.

2. یادگیری کد نویسی فقط با مشاهده

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

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

۳. قبل از غرق شدن در موضوعی انتظار داشته باشید در آن متخصص شوید

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

  • تصوری غلطی که از خود دارید و فکر میکنید باید برای شروع یک پروژه یک نابغه باشید.
  • اعتماد به نفس پایینی که در ابتدای کار دارید.

چه زمانی می‌توانید اولین پروژه خود را بسازید ؟

با غرق شدن در یک موضوع و پرداختن به جزئیات آن میتوانید اعتماد به نفس واقعی خود را تقویت کنید. بعضی از مبتدیان اعتماد به نفس زیادی ندارند . خب چه راه خوبی برای ایجاد این اعتماد وجود دارد ؟ خب خیلی ساده با انجام دادن. بهترین راه برای یادگیری برنامه نویسی چیست ؟

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

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

۴. تسلیم شدن در برابر شکست هایی که ممکن است در این راه با آن روبه رو شوید

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

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

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

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

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

#اشتباهات برنامه نویسی

منبع: قلم چی

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