اصول برنامه نویسی در PHP

۱۳۹۲/۰۳/۲۳

clean_codeپی اچ پی یکی از بهترین و پرکاربردترین زبان های دنیاست که داکیومنت های بسیاری برای آن وجود دارد. اما زبان php مشکلاتی دارد (طبیعی ست که همه ی زبان ها مشکلاتی دارند).
مهمترین مشکل PHP این است که سخت گیر نیست (برای هر کاری راه های بسیاری وجود دارد) و این باعث می شود که ما اشتباهاتی را مرتکب شویم که در پشت محدودیت های برنامه دیده نمی شود. در حالی که می توانیم با نوشتن کدتمیز (Clean Code) و خوانا از آنها جلوگیری کنیم.

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



آموزش yii – بخش اول

۱۳۹۱/۰۶/۲۷

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



شی گرایی(OOP)در پی اچ پی(PHP) – سازنده

۱۳۹۱/۰۱/۳۱

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



شی گرایی(OOP)در پی اچ پی(PHP) – میدان دید

۱۳۹۱/۰۱/۳۰

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



شی گرایی(OOP)در پی اچ پی(PHP) – عملکرد

۱۳۹۱/۰۱/۲۹

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



شی گرایی(OOP)در پی اچ پی(PHP) – خصوصیات

۱۳۹۱/۰۱/۲۲

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



شی گرایی(OOP)در پی اچ پی(PHP) – شی و کلاس

۱۳۹۱/۰۱/۰۸

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



شی گرایی(OOP)در پی اچ پی(PHP) – مقدمه

۱۳۹۰/۱۲/۲۴

شی گرایی در پی اچ پیشیوه برنامه نویسی شی گرا ( Object-oriented programming ) سالهاست که در ایجاد برنامه های کاربردی مورد استفاده قرار می گیرد و به خوبی توانسته در توسعه برنامه های بزرگ و پیچیده به شکلی موفق عمل کند. به حدی این موفقت چشم گیر است که برخی با دیدگاه افراطی شی گرایی را نوش دارویی برای توسعه نرم افزار می پندارند. تا زمان حال بیشتر زبان های برنامه نویسی خود را با شی گرایی تطبیق داده و سعی کرده اند تا با این کار توسعه دهنگان خود را از راز توسعه با شیوه شی گرایی بی نصیب نگذارند. PHP بعد از نگارش ۳ به آرامی به سمت شی گرایی حرکت کرد و در نگارش ۵ این حرکت را به حد مطلوبی رسیده است.

ادامه ی مطلب



PDO یا MySQLi یک انتخاب ساده

۱۳۹۰/۱۲/۰۸

pdo vs. mysqliبرای کار با یه دیتابیس در پی اچ پی شما می تونید انتخاب های گوناگونی داشته باشید. اما دوتا از بهترین ها در این زمینه PDO و MySQLi هستند که در این بخش قصد داریم مقایسه ی مختصری داشته باشیم بین این دو کتابخانه. شما کدوم رو انتخاب کردید؟ آیا می دونید که هر کدوم چه ویژگی هایی دارن؟ برای بررسی این دو کلاس می تونید این بحث رو تا انتها بخونید و نظراتتون رو بگید. ادامه ی مطلب



PHPDoc، قسمت اول – معرفی

۱۳۸۹/۱۲/۲۲

مستند سازیهر برنامه نویسی که در سطح مبتدی برنامه نویسی می کنه وقتی یه واژه جدید بگوشش می خوره شاخکاش تیز می شه تا با افزایش دانش خودش سطح برنامه نویسیش رو ارتقاع بده… “مستند سازی” هم می تونه یک واژه جدید باشه. با یک جستجوی کوچیک می شه یه چیزایی راجع به مستند سازی متوجه شد. اما این دانش ابتدایی سوالاتی رو در ذهن ایجاد می کنه که پاسخ به اون سوالات می تونه به پیشرفت در این دانش جدید کمک کنه! ادامه ی مطلب