آشنایی با نسخه بندی معنایی (SemVer)

  • بوسیله: محسن شفیعی
  • در 1393/04/18 - 19:30
  • نظرات (7)
Semantic Versioning

Semantic Versioning

همه کسانی که با دنیای کامپیوتر و نرم افزار به هر شکلی در ارتباط هستند کم و بیش با تغییرات نسخه های مختلف یک نرم افزار آشنایی دارند. برای مثال همه میدانند که بسته Office 2010 از Office 2007 جدیدتر است و قابلیت های بیشتری دارد یا نسخه گوگل کروم 35 از نسخه 34 آن بهتر و جدیدتر است. اما این نسخه بندی ها به چه شکلی انجام میشود. بعضی از نسخه بندی ها مانند مثال Office از نسخه بندی سال انتشار استفاده میکنند و در هر سالی که آن نرم افزار انتشار یابد، شماره نسخه نیز برابر شماره همان سال خواهد شد.

اما نسخه بندی دیگری نیز با نام نسخه بندی معنایی (Semantic Versioning) یا به اختصار SemVer نیز وجود دارد که امروزه بیشتر برنامه ها و کتابخانه ها از این نسخه بندی استفاده میکنند.

در ادامه مطلب همراه ما باشید…

(بیشتر…)

روز اول کنفرانس Google I/O 2014

  • بوسیله: محسن شفیعی
  • در 1393/04/05 - 11:41
  • دیدگاه‌ها برای روز اول کنفرانس Google I/O 2014 بسته هستند
Google I/O

Google I/O

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

در ادامه مطلب همراه ما باشید…

(بیشتر…)

آشنایی با فرمت تصویری WebP

  • بوسیله: محسن شفیعی
  • در 1393/03/12 - 19:00
  • نظرات (5)
Image Format

Image Format

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

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

(بیشتر…)

انتشار Ubuntu 14.04 LTS

  • بوسیله: محسن شفیعی
  • در 1393/01/29 - 14:33
  • نظرات (11)
Ubuntu 14.04 LTS

Ubuntu 14.04 LTS

از آنجایی که دنیای وب با جامعه متن باز (Open Source) پیوند عمیقی دارد، تصمیم گرفتیم مطلبی در مورد انتشار یکی از محبوبترین توزیع های Linux یعنی Ubuntu داشته باشیم. Ubuntu 14.04 LTS که نسخه نهایی آن دیروز منتشر شد، به مدت 5 سال پشتیبانی میشود و جزء نسخه های Long Term Support محسوب میشود. این نسخه از Ubuntu را میتوان یکی از بهترین نسخه های Ubuntu از زمان اولین نسخه آن دانست که بهبودهای فراونی در قسمت های مختلف داشته است.

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

در ادامه مطلب همراه ما باشید…

(بیشتر…)

آشنایی با نرم افزار Koala

  • بوسیله: محسن شفیعی
  • در 1393/01/16 - 23:21
  • نظرات (7)
Koala

Koala

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

در ادامه مطلب همراه ما باشید…

(بیشتر…)

چگونه با امنیت یک پسورد را ذخیره کنیم؟

  • بوسیله: محسن شفیعی
  • در 1392/12/22 - 10:40
  • نظرات (7)
Hash

Hash

در مطلبی در گذشته با عنوان آموزش هش(Hash) کردن پسورد در PHP انواع روش های هش کردن پسورد را بیان کردیم که الگوریتم های گفته شده علاوه بر زبان PHP در زبان های دیگر نیز قابل استفاده هستند. الگوریتم های معمول شامل md5, sha128, sha256, sha512, bcrypt و به همراه تکنیک salt است. اما از کدام الگوریتم برای ذخیره پسورد استفاده کنیم؟ مطمئنا جواب ما BCrypt است. اما چرا؟

در ادامه مطلب همراه ما باشید…

(بیشتر…)

10 نشانه از اینکه شما یک توسعه‌ دهنده حرفه‌ای وب هستید

  • بوسیله: محسن شفیعی
  • در 1392/11/29 - 10:28
  • نظرات (14)
Tips

Tips

Martin Angelov در سایت خودش 10 نشانه که نشان میدهد یک نفر در توسعه وب، حرفه ای کار میکند را منتشر کرده است، که ما صرف نظر از درستی یا نادرستی این نشانه ها، آنها را بررسی میکنیم.

در ادامه مطلب همراه ما باشید…

(بیشتر…)

بهترین زبان‌های برنامه نویسی برای سال 2014

  • بوسیله: محسن شفیعی
  • در 1392/11/18 - 11:49
  • نظرات (8)
Language Programming

Language Programming

تقریباً یک سال پیش با مطلبی مشابه برای سال 2013 پیش بینی بهترین زبان‌های برنامه نویسی برای یادگیری را، از مستندات یک سایت پرمخاطب برنامه نویسی ارزیابی کردیم. حالا برای سال 2014 نیز ارزیابی ما بر اساس اطلاعات Jobs Tractor که بیش از 45 هزار توسعه‌ دهنده را در 12 ماه گذشته در توییتر بررسی کرده است خواهد بود.
در ادامه همراه ما باشید…

(بیشتر…)

Dart: زبان جدید گوگل

  • بوسیله: محسن شفیعی
  • در 1392/11/02 - 18:20
  • نظرات (10)
Dart

Dart

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

هنوز زود است در مورد وضعیت آینده Dart صحبت شود اما میتوان پیشبینی کرد که وضعیت دارت مشابه VBScript در Internet Explorer با شکست مواجه شود.

در ادامه همراه ما باشید

(بیشتر…)

LiveStyle بوسیله Emmet

  • بوسیله: محسن شفیعی
  • در 1392/05/27 - 17:57
  • نظرات (10)
Emmet

Emmet

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

اما فعلا دو محدودیت وجود دارد. اول اینکه شما باید حتما از ادیتور Sublime Text استفاده کنید، بعدی هم اینکه مرورگر شما باید Google Chrome باشد. البته با استفاده راه هایی هم میتوان از مروگر Safari هم استفاده کرد، که به دلیل استاندارد نبودن از ذکر آن خودداری میکنیم.

تیم Emmet این قول را داده است که در آینده از ادیتورهای بیشتری پشتیبانی کند.

ابتدا Sublime Text 2 یا 3 و مروگر Google Chrome را آماده داشته باشد سپس به ادامه مطلب بروید تا ادامه کار را با همدیگر انجام دهیم.

(بیشتر…)