نکات برنامه‌نویسی

نکات برنامه‌نویسی و رایانه‌ای - امیرمسعود ایرانی

نکات برنامه‌نویسی

نکات برنامه‌نویسی و رایانه‌ای - امیرمسعود ایرانی

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

کم کردن حجم عکس

امیرمسعود ایرانی | سه شنبه, ۲۵ شهریور ۱۳۹۳، ۰۵:۳۲ ب.ظ | ۰ نظر

کم کردن حجم تصاویر به دلایل مختل ممکن است صورت بگیرد.

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


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

این فایل‌ها در ۳ نوع ۸ بیت، ۲۴ بیت و ۳۲ بیت وجود دارند. یک نوع دیگر که ممکن است در تمام نرم‌افزارها پشتیبانی نشود، نوع ۱۶ بیت آن است.

بهترین نرم‌افزار برای کاهش حجم این نوع تصاویر، بدون کاهش کیفیت آن‌ها PngOptimizer نام دارد.

برای دریافت این برنامه اینجا کلیک کنید

سایت‌های آنلاین و نرم‌افزارهای دیگر نیز برای انجام این کار وجود دارند. یکی از بهترین سایت‌ها که در هنگام فشرده‌سازی فایل‌های png با عمق رنگ ۳۲ بیتی به شما کمک می‌کند tinypng نام دارد. این سایت فایل‌های ۳۲ بیتی را به ۱۶ بیتی تبدیل می‌کند و در نتیجه کیفیت فایل خروجی کاهش پیدا می‌کند. در عوض حجم تصاویری که بخش‌های شفاف و نیمه‌شفاف زیادی دارند، مقدار قابل توجهی کم می‌شود.


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


فرمت متداول دیگر، JPEG است. برای فشرده‌سازی این فرمت، یکی از بهترین نرم‌افزارها XnView است.

برای دریافت این نرم‌افزار اینجا کلیک کنید

این نرم‌افزار علاوه بر فشرده‌سازی فایل‌های jpg توانایی نمایش صدها نوع فرمت صوتی و تصویری و ذخیره‌سازی چندین فرمت تصویری را در خود دارد.

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


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

  • امیرمسعود ایرانی

تفاوت AMD با Intel

امیرمسعود ایرانی | دوشنبه, ۲۴ شهریور ۱۳۹۳، ۱۲:۳۲ ب.ظ | ۰ نظر

AMD و Intel دو تولیدکننده‌ی بزرگ پردازنده یا CPU در جهان هستند.

تفاوت‌های موجود در این دو برند در ویژگی‌های سخت‌افزاری و نرم‌افزاری قابل بررسی هستند.

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

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


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

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

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

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

  • امیرمسعود ایرانی

تفاوت IP Static و Dynamic

امیرمسعود ایرانی | دوشنبه, ۲۴ شهریور ۱۳۹۳، ۱۲:۱۵ ب.ظ | ۰ نظر

در هنگام خرید اینترنت به شکل‌های مختلف از جمله اینترنت ADSL، امکان تهیه‌ی IP ایستا یا Static و IP پویا یا Dynamic وجود دارد.

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

در IP Dynamic در هر اتصال یک IP جدید که ممکن است با دفعات قبلی متفاوت باشد برای سیستم شما مشخص می‌شود. ولی در IP Static یک IP منحصر به فرد به طور دائمی برای شما رزرو شده است.

تهیه‌ی IP ایستا یا Static مستلزم پرداخت هزینه‌ی ماهیانه است که برای برخی نیازها یک مزیت به حساب می‌آید.

برای مثال چنانچه بخواهید روی سیستم خود یک سایت اینترنتی را میزبانی کنید، داشتن یک IP ایستا مزیتی به حساب می‌آید.

امروزه روش‌هایی هم برای استفاده از IP پویا یا Dynamic با در اختیار داشتن مزایای IP ایستا یا Static وجود دارند. برای مثال برخی انواع مودم‌ها امکان اطلاع رسانی خودکار IP شما به سرویس‌های آنلاین که به Dynamic DNS شهرت دارند فراهم می‌کنند تا امکان دسترسی به سیستم شما همیشه بدون توجه به شماره IP تخصیص داده شده ممکن باشد.

بررسی این سیستم‌ها از دامنه‌ی این نوشته خارج است.

  • امیرمسعود ایرانی

روش حذف پسوند php با استفاده از htaccess

امیرمسعود ایرانی | شنبه, ۱۵ شهریور ۱۳۹۳، ۱۲:۵۳ ب.ظ | ۰ نظر
ممکن است بخواهید کاری کنید تا کاربران سایت شما،‌ بدون تایپ اسم فایل به همراه پسوند php بتوانند از سایت شما استفاده کنند.
حذف پسوند php می‌تواند با هدف بهتر شدن ظاهر لینک‌های سایت یا با اهداف سئو به انجام برسد.
برای انجام این کار داخل فایل htaccess خود دستورات زیر را بنویسید
این دستورات با تغییراتی جزئی قابل استفاده برای پسوندهای html یا htm و سایر پسوندها نیز هستند:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]
  • امیرمسعود ایرانی

تبدیل تاریخ شمسی به میلادی

امیرمسعود ایرانی | دوشنبه, ۱۰ شهریور ۱۳۹۳، ۰۶:۱۶ ب.ظ | ۰ نظر

برای تبدیل آنلاین تاریخ شمسی به میلادی اینجا کلیک کنید

  • امیرمسعود ایرانی

نکات مهم برای افزایش فروش آنلاین

امیرمسعود ایرانی | يكشنبه, ۹ شهریور ۱۳۹۳، ۱۲:۰۵ ب.ظ | ۰ نظر
برای افزایش فروش آنلاین می‌بایست مشتریان خود را تحت تاثیر قرار دهید، آنان را جذب و نگهداری کنید.


  • یک وبسایت فروشگاهی ساده و بی عیب داشته باشید
  • همه‌جا به دنبال شرکای استراتژیک باشید
  • مشتریان را در تونل فروش هدایت کنید( مراحل پی در پی از گرفتن اطلاعات مشتری تا تکمیل و ارسال سفارش )
  • فروشگاه خود را به صورت شبکه‌ای تبلیغ و گسترش دهید
  • فروشگاه خود را سفارشی و شخصی‌سازی کنید
  • نظرات و بازخوردهای مشتریان را در سایت خود بگنجانید
  • امیرمسعود ایرانی

وردپرس یا جوملا

امیرمسعود ایرانی | يكشنبه, ۹ شهریور ۱۳۹۳، ۱۱:۱۸ ق.ظ | ۱ نظر

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

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

تفاوت‌های وردپرس و جوملا

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

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

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

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

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

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

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

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

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

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

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

وردپرس از نظر پایداری و امنیت در شرایط بهتری به سر می‌برد. استفاده‌ی بدون دقت از جوملا یا برخی از افزونه‌های آن می‌تواند امنیت سایت شما را در خطر بیندازد.

نتیجه‌گیری

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


طراحی سایت با جوملا

طراحی سایت با وردپرس

  • امیرمسعود ایرانی

معرفی Trait در PHP

امیرمسعود ایرانی | شنبه, ۸ شهریور ۱۳۹۳، ۰۱:۲۶ ب.ظ | ۰ نظر

Trait مفهومی جدید در PHP نگارش 5.4 و جدیدتر است. این مفهوم برای جایگزینی ارث بری چندگانه که در php موجود نیست ایجاد شده است.

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


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


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

این کار از تکرار کد جلوگیری می‌کند و می‌تواند باعث افزایش کارایی نرم‌افزار و سرعت توسعه‌ی آن شود

  • امیرمسعود ایرانی

توقف نمایش نام نویسنده در نتایج جستجوی گوگل

امیرمسعود ایرانی | شنبه, ۸ شهریور ۱۳۹۳، ۱۲:۳۸ ق.ظ | ۰ نظر

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

البته نام نویسنده در کنار پست‌های گوگل پلاس همچنان به نمایش در خواهد آمد تا بتواند راهنمایی برای کاربران باشد تا مطالب ارائه شده توسط دوستان و آشنایان خود را بهتر شناسایی کنند و بیابند.

منبع

  • امیرمسعود ایرانی

Eventهای مدل‌ها در لاراول

امیرمسعود ایرانی | دوشنبه, ۳ شهریور ۱۳۹۳، ۰۵:۰۵ ب.ظ | ۰ نظر

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


در حال حاضر رویدادهای پشتیبانی شده در لاراول فهرست زیر هستند:

creating, created, updating, updated, saving, saved, deleting, deleted, restoring, restored


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

  • امیرمسعود ایرانی