PDA

View Full Version : سوال: لطفا دوستان php کار جواب بدن!!!



hp2288ai
جمعه 29 دی 1391, 20:53 عصر
سلام.
من یک برنامه نویس حرفه ای دات نت هستم. بیش از 12 سال تجربه تو برنامه نویسی و حداقل 7 سال کار وب کردم. این بحث که:
1- php خیلی خوبه و به قول خودمون الست و بلست .
2-یکی دو مورد هم برخورد با افرادی که موقع جذب نیرو php کار کرده بودن و خیلی تعریفش رو می کردن.
3- تعداد آگهی های که تو روزنامه برای php کار ها داره زیاد میشه.
4- تعداد پروژه هایی که هر روزه برای کار با php زیاده می شه.

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

1- رایگانه(نظر من: شاید تو ایران خیلی مهم نباشه)
2- سرعتش بالاست( نظر من: قبول دارم و واقعا عالیه)
3- تو پلت فرم های مختلف اجرا میشه(نظر من: که فکر می کنم تو وب شاید زیاد بکار نیاد)
4- فایل اضافی تولید نمی کنه.
5- امنیتش بالاست(نظر من: نمی دونم و استفاده نکردم)
6- برنامه نویسیش ساده است(نظر من: تو برنامه نویسی حرفه ای شاید نکته مهمی نباشه و مهم نگهداری و گسترش برنامه تو اولویت بالاتر باشه)

بعد از چند وقت کار کردن نظر من در موردش اینه:

1- آره وقعا سرعتش در مقایسه با دات نت خوبه. متاسفانه دات نت سرعت مناسبی نداره.

2- بعد از چند سال کار با یک محیط مثل ویژوال استدیو وقتی می خوای php کار کنی انگار آواره ای. انگار متولی نداره. نمی دونی چیکار کنی. محیطی که من باهاش برنامه می نویسم اسمش هست DzSoft PHP Editor که همچین مالی نیست بهتره بگم اصلا IDE نیست. هی چی نداره. شاید من IDE مناسبی رو انتخاب نکردم. شما بگید! این همه تاکید میشه که میشه با نوت پد هم برنامه phpنوشت که چیز خوبی نیست. کارگر بنایی هم می تونه دستی مصالح رو 50 طبقه بالا ببره ولی با ابزارها و تکنولوژی ها کارها راحتر، ساده تر، سریعتر میشه. مگه سادیسم داریم که بریم با نوت پد برنامه بنویسیم؟

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

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

5- یه نمونه از سایت های ساده که با دات نت داشتم رو با php کار کردم. یعنی همون سایت عینا با php کار شد. از کلاس ها استفاده کردم و سعی کردم تر وتمیز باشه. انصافا بد نشد. و کدهام قابل استفاده مجدد هستش. ولی هیچ مزیتی نسبت به دات نت نداره. تازه شی گراییش در حد کلاسه. در صورتیکه تو دات نت شما می تونید کاملا بخش های پروژه رو از هم جدا کنید. مثلا قسمتی از برنامه که مربوط به ماهیت کار هست و ما بهش می گیم domain و ربطی نداره به UI که تو وب باشه یا دسکتاپ بصورت dll نوشت و کاملا قابل گسترش برای آینده هست.(این یه نمونه بود فقط و صدها امکانات دیگه)

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

7- کدهای آماده. وقتی از چند نفر که البته php کار نبودم پرسیدم اونا خیلی تاکید داشتن رو این موضوع که تو php کد آماده زیاده. خب مثلا چی؟ مثلا شما یه سایت مثل ایستگاه، یا تخته گاز یا هر سایت دیگه بخوایید بسازید چه کد آماده ای دارید؟ تو دات نت که کلی کامپوننت آماده هست. نمونه کدها و سمپل هام زیاده. یعنی تو php بیشتر از اینه؟ یعنی شما می رید و یک دفعه یه نمونه سورس پیدا می کنید که مثلا اجی مجی می کنید و یه هو سایت خفن بالا میاد؟ من که تو نمونه سایتم همش رو خودم نوشتم و سورس آماده ای پیدا نکردم!

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

9- قیمت کار. تو چند جا به قیمت هایی برخورد کردم که برنامه نویس های php کار حاضرن باهاش برنامه بنویسن که اصلا هیثیت و کلاس کار برنامه نویسی و مهندسی نرم افزار رو زیر سئوال میبره. مثلا یه پروژه که مثل سایت تخت گاز رو کار فرما با کلی آبشن های بیشتر و با سورس خواسته و مثلا برنامه نویس گفته 1یک میلیون و پنصد هزار. یا سایتی مثل دیجی کالا که دورا دور می دونم چقدر کار شده روش و جندین ورژن نوشته شده ، برنامه نویس قیمتی گفته که دستزمزد کارگر بنایی هم نیست! نمی دونم به خدا یا همون قضیه سورس آماده و اجی مجیه و یا برنامه نویسش مبتدیه و می خواد به هر قیمتی کار رو بگیره. بازم شما بگید دلیلش چی می تونه باشه!

نظر من اینه که شاید سادگی و تقریبا اسکریپتی بودن این زبانه که اجازه میده بیشتر برنامه نویس های تازه کار به این زبان کشیده بشن و باعث گسترش اون شدن.

webdesign2
جمعه 29 دی 1391, 23:31 عصر
طرف 2 ساله از دانشکاه اومده بیرون، تو رزومش نوشته گرافیگ، وب، برنامه تحت ویندوز، php، jQuery، جاوا اسکریپت و ... نمی دونم کی وقت کرده همه اینا رو یاد بگیره. سلام !!
دوست عزیز الان تو همان دبیرستان که هستن بچه ها کار با php ,html , css را فول هستن و فتوشاپ که بازیشان شده بچه سوم راهنمای داره با فتوشاپ کار میکنه و کسایی هستن که از دبیرستان در آمدن و به دانشگاه رسیدن شروع به برنامه نویسی میکنند .

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

Unique
شنبه 30 دی 1391, 01:58 صبح
دوست عزیز عجب تند میری !
من الان دو ساله که بعد از 6 یا 7 سال کار با net. دارم همه پروژه هام را آروم آروم میبرم روی php ، راستش به نظر من فرقی نمیکنه و هر کاری توی net. میکردم توی php هم میشه ! کی گفته php را نمیشه به صورت کد جدا UI جدا کار کرد !؟ البته که میشه اما بعضی وقت ها کمی اسپاگتی نوشتن هم مشکلی به وجود نمیاره ! دوست ندارین از smarty استفاده کنید و کلا MVC کار کنین یا اصلا یه نگاه به prado (یک framework برای php هستش) بنداز یه چیزی تو مایه net. البته event driven !

من فکر کنم دوستانی که باهاشون صحبت داشتی یا مقالاتی که گفتی اطلاعات درستی ندادن ! php بزرگترین برتریش اینه که open source هستش ! یکی از برتریهای مهم دیگش هم اینه که با یکسری تکنولوژی دیگه گره خورده که اونها هم معرکه هستند مثل Linux که به شدت از windows قابل قبول تر و stable تره ، apache که اصلا من حاضر نیست با IIS هم ردیفش کنم چه برسه به مقایسه ! یا mysql که به نظر من برای وب خیلی از mssql سر تره (البته نطر منه و ممکنه خیلی ها قبول نداشته باشن)

ببین اگه انتظار داری برای php یه ide توی مایه های visual studio پیدا کنی که در اشتباهی چون اصلا web based programming نیاز به این ابزار نداره خود من با sharp develop کار میکنم و visual studio به نظرم مال کار وب نیست ! desktop قطعا آره اما وب نه ! مثلا میشه WYSIWYG اون را با dreamweaver مقایسه کرد ؟ ابزار html را ؟ قطعا نه اگه مایکروسافت میتونست جلوی سقوط frontpage را میگرفت ! پس میمونه بحث کد زنی که ابزار های ساده php (ببین نمیگم ide) کار های ابتدایی و مهم را انجام میدن !

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

البته چند تاش را میگم :
1 - توسعه دهندگانش مثل مایکروسافت دیوانه وار قید backward compatibility را نمیزنن و برنامه نویس را توی گل نمیزارن (هنوز از php4 استفاده میشه واقعا عجبا)
2 - سرویس دهنده های لینوکسی به شدت از ویندوزی ارزونتر و stable تر هستند چه امنیتی و چه performance ی !
3 - محیط توسعه اون مجانیه ، مملکت ما تا ابد نمیتونه خلاف جهت آب حرکت کنه !؟
4 - زبانش خیلی انعطاف پذیره و برای وب طراحی شده
5 - برنامه نویس های php راحت تر توی گروه کار میکنند ! دلیلش اینه همشون code باز هستن و نه IDE باز (بگذار برات بگم یکبار توی آزمون استخدام از 40 نفر فقط 2 نفر حدودا امکانات web.config را میدونستند و بقیه میگفتن ما فقط میتونیم connection string را توش عوض کنیم ! اما بیش از 90% برنامه نویسان php با فایلهایی نظیر php.ini و htaccess. آشنایی دارند میدونی چرا ؟ چون وب را اصولی یاد گرفتن نه مثل برنامه نویسای vb که با visual studio فهمیدن برای وب هم میشه برنامه نوشت)
6 - php خیلی از ابزار های جانبی و پروژه های جانبیش رایگانه و کسی گیر نمیده مثلا روی vps نصب کنی اما ماژول های net. اغلبا پولی هستند و اگه کرک نصب کنی اونوقت ممکنه vps را dedicated را مفت از دست بدی
و ...

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

ravand
شنبه 30 دی 1391, 09:07 صبح
من نمیدونم چرا همه علاقه دارن با دریم وی ای ور کار کنن :لبخند:
من اصلا دوست ندارم با برنامه های کلا ویزی ویگ کار کنم. و برنامه نویسی رو به کار با این گونه برنامه ها ترجیح میدم. حداقل می فهمم دارم چیکار میکنم.

eshpilen
شنبه 30 دی 1391, 10:08 صبح
من فکر میکنم بزرگترین مزیت PHP بر ASP.NET همون بازمتن و رایگان بودنه. هم خودش و هم پلتفرمی که روش اجرا میشه (لینوکس).
و این دوتا اغلب دست کم گرفته میشن. چون به صورتهای متعدد و پیچیده ای تاثیر میذارن که خیلی ها متوجه نیستن.
یعنی بگم اینقدر تاثیر دارن که حتی با تمام این مزایایی که شما گفتی، بازهم ترجیح داده بشن.

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

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

MMSHFE
شنبه 30 دی 1391, 11:50 صبح
1- رایگانه(نظر من: شاید تو ایران خیلی مهم نباشه)

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


2- سرعتش بالاست( نظر من: قبول دارم و واقعا عالیه)

بخش عمده سرعت بستگی به نحوه کدنویسی و رعایت استانداردها داره ولی در کل، بله PHP سریعتر اجرا میشه چون کدها با یکبار تفسیر به زبان ماشین تبدیل میشن ولی کد NET. دوبار کامپایل داره (یکبار از کد معمولی زبان برنامه نویسی به MSIL و دفعه بعد توسط JIT Compiler از MSIL به Native Code)


3- تو پلت فرم های مختلف اجرا میشه(نظر من: که فکر می کنم تو وب شاید زیاد بکار نیاد)

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


4- فایل اضافی تولید نمی کنه.

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


5- امنیتش بالاست(نظر من: نمی دونم و استفاده نکردم)

امنیت هم بستگی به میزان رعایت اصول و استانداردهای امنیتی توسط برنامه نویس داره. مثلاً PHP بیش از 50 تابع Cryptography رو پشتیبانی میکنه ولی اگه شما توی کدتون ازشون به شکل صحیح استفاده نکنید، هیچ فایده ای نداره.


6- برنامه نویسیش ساده است(نظر من: تو برنامه نویسی حرفه ای شاید نکته مهمی نباشه و مهم نگهداری و گسترش برنامه تو اولویت بالاتر باشه)

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


بعد از چند وقت کار کردن نظر من در موردش اینه:
1- آره وقعا سرعتش در مقایسه با دات نت خوبه. متاسفانه دات نت سرعت مناسبی نداره.

این رو که اشاره کردم.


2- بعد از چند سال کار با یک محیط مثل ویژوال استدیو وقتی می خوای php کار کنی انگار آواره ای. انگار متولی نداره. نمی دونی چیکار کنی. محیطی که من باهاش برنامه می نویسم اسمش هست DzSoft PHP Editor که همچین مالی نیست بهتره بگم اصلا IDE نیست. هی چی نداره. شاید من IDE مناسبی رو انتخاب نکردم. شما بگید! این همه تاکید میشه که میشه با نوت پد هم برنامه phpنوشت که چیز خوبی نیست. کارگر بنایی هم می تونه دستی مصالح رو 50 طبقه بالا ببره ولی با ابزارها و تکنولوژی ها کارها راحتر، ساده تر، سریعتر میشه. مگه سادیسم داریم که بریم با نوت پد برنامه بنویسیم؟

شما Zend Studio رو امتحان کنید، نظرتون عوض میشه. بعلاوه همونطور که دوستم اشاره کردن، ادیتورهای WYSIWYG ملاک مقایسه مناسبی نیستن. اون بخش از کار رو میتونید با Dreamweaver و امثالهم انجام بدین. مهم اینه که توی کدنویسی PHP راحت باشین. Auto Complete و Intellisence و... وجود داشته باشه. Documentation توابع خونده بشه و به شما موقع استفاده از اونها نشون داده بشه. همه این موارد توی Zend Studio هست.


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

واقعاً توی NET. کد به قول شما کثیف و شلوغ نداریم؟ اینکه اکثر برنامه نویسها عادت کردن کد نامرتب بنویسن، ملاک ارزش گذاری برای خود PHP نیست. مثل اینه که بگیم تعداد کاربردهای نامناسب مواد منفجره بیشتر از کاربردهای مفیدش بوده، پس TNT بدرد نمیخوره درحالی که این قیاس اشتباهه و اگه همین TNT و مواد مشابهش نبود، امروزه اینقدر معدن نداشتیم. حالا اگه بیشتر از معادن توی جنگها ازش استفاده میشه، مشکل مربوط به نحوه کاربرد هست نه خود مواد منفجره. ضمناً وقتی از چیزی استفاده نمیشه هم بودن یا نبودنش مهمه چون اگه یه روزی یکی خواست استاندارد کد بنویسه، PHP ازش استقبال میکنه.


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

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


5- یه نمونه از سایت های ساده که با دات نت داشتم رو با php کار کردم. یعنی همون سایت عینا با php کار شد. از کلاس ها استفاده کردم و سعی کردم تر وتمیز باشه. انصافا بد نشد. و کدهام قابل استفاده مجدد هستش. ولی هیچ مزیتی نسبت به دات نت نداره. تازه شی گراییش در حد کلاسه. در صورتیکه تو دات نت شما می تونید کاملا بخش های پروژه رو از هم جدا کنید. مثلا قسمتی از برنامه که مربوط به ماهیت کار هست و ما بهش می گیم domain و ربطی نداره به UI که تو وب باشه یا دسکتاپ بصورت dll نوشت و کاملا قابل گسترش برای آینده هست.(این یه نمونه بود فقط و صدها امکانات دیگه)

همین که همه کارهایی که توی NET. با اون IDE قدرتمندش انجام شده رو تونستین با PHP بسازین خودش یک امتیازه. درمورد تفکیک بخشهای پروژه هم درمورد معماری MVC و سایر Design Patternها تحقیق کنید. درخصوص جداسازی Code Behind و UI هم درمورد Smarty جستجو کنید.


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

این قابلیت MultiThread توی وب آنچنان کاربرد نداره ولی باز هم میشه با فراخوانی PHP توی سرورهای لینوکس بصورت Processهای جداگانه ازطریق CLI و مدیریت Processها همزمان چندین Process زبان PHP رو بصورت همزمان اجرا کرد. حتی میشه اسکریپتها رو طوری تنظیم کرد که تا زمان پایان کارشون متوقف نشن و Timeout رخ نده.


7- کدهای آماده. وقتی از چند نفر که البته php کار نبودم پرسیدم اونا خیلی تاکید داشتن رو این موضوع که تو php کد آماده زیاده. خب مثلا چی؟ مثلا شما یه سایت مثل ایستگاه، یا تخته گاز یا هر سایت دیگه بخوایید بسازید چه کد آماده ای دارید؟ تو دات نت که کلی کامپوننت آماده هست. نمونه کدها و سمپل هام زیاده. یعنی تو php بیشتر از اینه؟ یعنی شما می رید و یک دفعه یه نمونه سورس پیدا می کنید که مثلا اجی مجی می کنید و یه هو سایت خفن بالا میاد؟ من که تو نمونه سایتم همش رو خودم نوشتم و سورس آماده ای پیدا نکردم!

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


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

اینجا هم مشکل از زبان برنامه نویسی نیست، از برنامه نویسه. PHP کاملاً از کدنویسی استاندارد پشتیبانی میکنه.


9- قیمت کار. تو چند جا به قیمت هایی برخورد کردم که برنامه نویس های php کار حاضرن باهاش برنامه بنویسن که اصلا هیثیت و کلاس کار برنامه نویسی و مهندسی نرم افزار رو زیر سئوال میبره. مثلا یه پروژه که مثل سایت تخت گاز رو کار فرما با کلی آبشن های بیشتر و با سورس خواسته و مثلا برنامه نویس گفته 1یک میلیون و پنصد هزار. یا سایتی مثل دیجی کالا که دورا دور می دونم چقدر کار شده روش و جندین ورژن نوشته شده ، برنامه نویس قیمتی گفته که دستزمزد کارگر بنایی هم نیست! نمی دونم به خدا یا همون قضیه سورس آماده و اجی مجیه و یا برنامه نویسش مبتدیه و می خواد به هر قیمتی کار رو بگیره. بازم شما بگید دلیلش چی می تونه باشه!

این مسئله به چند دلیله: 1- زیاد بودن رقبا در کار با PHP (دست زیاده) 2- عدم اطلاع خیلیها از قیمت واقعی کارشون 3- عدم وجود صنفی که قیمت استاندارد ارائه بده 4- نیت عمدی بعضیها برای بدست گرفتن پروژه ولو به قیمت تخریب بازار


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

hp2288ai
شنبه 30 دی 1391, 13:08 عصر
سلام
اول دم همگی گرم و ممنون که جواب دادین. خیلی از جواب هاتون استفاده کردم. من نخواستم بگم php بده و دات نت خوبه. فقط دنباله یکسری سئوالهایی بودم که جایی به جوابشون نرسیده بودم و دوست داشتم از افرادی که تجربه دارن تو php بپرسم.

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

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

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

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

در مورد فریم ورک ها هم گفتم که زند رو دانلود کردم اتفاقا دیدم که MVC هم داره که من یه جورایی عاشقشم و یک مقدار هم کار کردم ولی چندجا(تو وبلاگ های ایرانی) دیدم که با شک تردید در موردش صحبت شده بود. کار کردن با فریم ورک یا یک تولز یا کامپوننت این خصوصیت رو داره که کد شما وابسته به اون میشه و اگه چیز مناسب انتخاب نکرده باشید زحماتتون هدر میره. می خواستم بدونم که شما ها که کار php حرفه ای می کنید با IDE یا تولزی کار می کنید که مطمئن باشه که برای یکی مدت مناسب بشه روش برنامه ریزی کرد و مثلا یکسال دیگه آدم مجبور به تعویضش نباشه. یا نه با php خالی بودن فریم ورکی یا ابزاری کار می کنید.

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

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

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

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

در مورد backward compatibility هم بگم که من منظورم این نبود. من بیشتر کدها وبرنامه های خودم رو می گم که به مرور زمان که نیاز به تغییرات دارن ، بشه نگهداری و گسترش داد. و این مورد رو واقعا بارها تجربه کردم که با گذشت 2 سال مجبور شدم کل کدها رو از ابتدا بنویسم. و نه تنها من بلکه خیلی جاهای دیگه که اصلا ربطی به وب نداشته و کارهای بزرگ شرکتی هم بوده در صورتیکه یک مقدار از این مسئله مربوط میشه به متدلوژی برنامه نویسی و یک مقدار هم بر میگرده به امکاناتی که زبان برای شما فراهم می کنه تا تغییرات برنامه بتونید هماهنگ باشید. مثلا فرض کنید می خوایید یک قطعه از کدتون رو تغییر بدید که مثلا به جای javascript با jQuery باشه یا هر تغییر دیگه گه بخاطر درخواست مشتری بوده یا تغییرات تکنولوژی، خب این تغییرات چقدر می تونه تو برنامه تاثیر بذاره، با تغییر یک قسمت از برنامه چند جای دیگه رو هم باید اجبارا اصلاح کنید. واقعا این مسئل تو پروژه های بزرگ و طولانی مدت و نرم افزارهای که نیاز به پشتیبانی دارن مهمه و ممکنه هزینه پشتیبانی خیلی سر سام آور بشه. حتی تو وب اپلیکیشن ها.


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

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

rezaonline.net
شنبه 30 دی 1391, 14:54 عصر
برای فریم ورکهای پی اچ پی اینجا میتونی بطور مختصر مقایسه ای بینشون ببینی
http://www.phpframeworks.com

وردپرس کلا ساختار جدایی داره پس اونو بیخیال بشید .

در مورد سرعت دات نت من چند جا شنیدم از پی اچ پی بیشتره اما تفاوت اونقدری نیست که یک زبان برنامه نویسی رو ول کنی و همون رو ملاک قرار بدی!
توی php5.4 سرعت به مراتب بیشتری رو تجربه میکنی !
امکانات شی گرایی پی اچ پی هم که شما ظاهرا فقط تعریف کلاس رو ازش یادگرفتید خیلی بیشتر از اون هست .
این کلید واژه ها روinterface , abstract , final ,static,... به مرور یاد خواهی گرفت .
امکانات شی گرایی پی اچ پی چیزی کم از جاوا نداره .
فقط مساله وراثت چندگانه هست که اکثرا گیر میدن بهش که اونم سیاست پی اچ پی حفظ سادگی است ویلا اونم حتما اضافه میکردن

masiha68
شنبه 30 دی 1391, 16:12 عصر
خدا کنه دیر نرسیده باشم
دوستان که خیلی خوب سوالا رو جواب دادن فقط یه مورد که جوابش به چشمم نیومد دلیل استفاده از نوت پد به جای نرم افزارهایی مثل دریم وره
من خودم با دریم ور یه cms ساختم ولی بازم مجبور شدم برم و کدهای دریم ور رو دست کاری کنم و یه بعضی قسمت هاشو تغییر بدم . در کل کدهای دست نویس به نسبت کدهای ماشینی مزیتشون توی کم بودنه و اینه تر و تمیز ترن و سایدم اینکه حداقل خودت می دونی چی رو کجا نوشتی ... البته اینا واسه کسایی که مثلا یه قالب وبلاگ طراحی می کنن زایاد فرقی نداره ولی خب واسه پروژهای بزرگ لازمه کدنویسی دستی باشه تا حداقل بدونینم چی رو کجا نوشتیم

eshpilen
شنبه 30 دی 1391, 16:20 عصر
البته نوتپد هم که میگن نه لزوما نوتپد سادهء ویندوز.
مثلا میتونید از نوتپد++ استفاده کنید که فقط اسمش شبیه نوتپد میکروسافته. یک ادیتور برنامه نویسیه با سینتاکس هایلات و autocomplete و این حرفا. همچنین قابلیت جستجو و جایگزینی بین تمام فایلهای پروژه.

hp2288ai
شنبه 30 دی 1391, 16:24 عصر
آقا شما ما رو چی فرض کردین. بعد یه عمر گدایی شبه جمعه مون رو فراموش نکردیم.

من نگفتم php شی گرایی نداره و static, final ... اینا رو بلد نیستم. من می گم تو نمونه کدها (از جمله ورد پرس که ظاهرا می گید زیاد تو بازی نیست) جایی ندیدم از این امکانات استفاده کنن و بیشتر از همون امکانات ساده زبان استفاده شده که کار خیلی ها رو هم راه انداخته. ولی می خوام بدونم برای یه ایجاد یک وب اپلیکیشن پیچیده یا یک CMS واقعی و حرفه متکی بودن به این ابزارهای اولیه کافیه(که فکر می کنم نیست) و بعد از مدتی که برنامه بزرگ شد نباید تو فایل ها و کدها دنبال ویرایش کدهایی که یکی از نیروهایی که قبلا انجام داده و حالا از شرکت رفته ندوم.

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

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

عزیز لو بده بینیم سال های قبل رو چند سال چند سال خوندی" :) کارت درسته

eshpilen
شنبه 30 دی 1391, 16:57 عصر
آقا شما ما رو چی فرض کردین. بعد یه عمر گدایی شبه جمعه مون رو فراموش نکردیم.
:قهقهه:


من نگفتم php شی گرایی نداره و static, final ... اینا رو بلد نیستم. من می گم تو نمونه کدها (از جمله ورد پرس که ظاهرا می گید زیاد تو بازی نیست) جایی ندیدم از این امکانات استفاده کنن و بیشتر از همون امکانات ساده زبان استفاده شده که کار خیلی ها رو هم راه انداخته. ولی می خوام بدونم برای یه ایجاد یک وب اپلیکیشن پیچیده یا یک CMS واقعی و حرفه متکی بودن به این ابزارهای اولیه کافیه(که فکر می کنم نیست) و بعد از مدتی که برنامه بزرگ شد نباید تو فایل ها و کدها دنبال ویرایش کدهایی که یکی از نیروهایی که قبلا انجام داده و حالا از شرکت رفته ندوم.
پروژه بزرگ و اینا مثلا چقدر بزرگ؟
نمونه؟
شما خودت تاحالا چه پروژه های بزرگی در چه حد کار کردی مثلا؟
یعنی مثلا از وردپرس بزرگتر و پیچیده تر؟
بعدم آمار کارهای اونقدر بزرگ به قول شما، در کل کارها و نیازها چقدره؟ چند درصده؟ چقدر مهم هستن؟


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


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

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


عزیز لو بده بینیم سال های قبل رو چند سال چند سال خوندی" :) کارت درسته
جان؟!

engmmrj
شنبه 30 دی 1391, 19:26 عصر
دوست عزیز الان تو همان دبیرستان که هستن بچه ها کار با php ,html , css را فول هستن
من کتاب های دبیرستان رو دیدم php یا css یاد نمی دن
dreamweaver
آموزش میدن

MMSHFE
شنبه 30 دی 1391, 20:00 عصر
امکانات شی گرایی پی اچ پی چیزی کم از جاوا نداره .
فقط مساله وراثت چندگانه هست که اکثرا گیر میدن بهش که اونم سیاست پی اچ پی حفظ سادگی است ویلا اونم حتما اضافه میکردن
وراثت چندگانه توی NET. هم پشتیبانی نشده چون کلاً از اول هم بودنش اشتباه بود و بجاش Interface جایگزین شده.

rezaonline.net
شنبه 30 دی 1391, 20:37 عصر
وراثت چندگانه توی NET. هم پشتیبانی نشده چون کلاً از اول هم بودنش اشتباه بود و بجاش Interface جایگزین شده.
منظورم قیاس با جاوا بود ، البته اینم نمیدونستم که net. هم پشتیبانی نمیکنه ، بهرحال یک آپشن اضافی هست :لبخندساده:


من نگفتم php شی گرایی نداره و static, final ... اینا رو بلد نیستم.
بلد بودن یه طرف ، استفاده مناسب یه طرف دیگه !
من گواهینامه دارم اما ماشین ندارم ، آیا راننده ام ؟؟


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


آفرین خوشم میاد خوب تشخیص میدی و رکن های مسائل رو میگیری.
یکیش هم بقول شما همین نکتهء باریک بینانه که خیلی ها همش میگن فریمورک فلان هست و شیء گرایی و MVC و template انجین و این حرفا، ولی خودشون ممکنه کار نکرده باشن یا خیلی کم و محدود و غیراصولی و یا فقط پروژه های کوچکی رو کار کرده باشن.
بعضیا همینطور یه حرفی رو شفاهی کپی پیست میکنن فقط!!
از کنایه خوشم نمیاد .
این جدیدترین پروژه ام
http://rezaworkshop.ir/static/file/webservice.pdf

hp2288ai
شنبه 30 دی 1391, 21:07 عصر
این جمله : " عزیز لو بده بینیم سال های قبل رو چند سال چند سال خوندی" :) کارت درسته " واسه اون دوستی بود که گفته بود 15 ساله دوم رو می خونه نوشته بودم.

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

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

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

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

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

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

hp2288ai
شنبه 30 دی 1391, 21:14 عصر
لطفا دوستان بحث رو شخصی نکنید. من بعنوان یه مبتدی تو php می خوام به یه نتیجه برسم و از نظرات شما دوستان استفاده کنم. حتما خیلی ها از امکانات php خوب استفاده می کنن و کنایه ای درکار نیست. از لینک مقایسه فریم ورک ها هم خیلی ممنون خیلی خوب بود.

hp2288ai
شنبه 30 دی 1391, 21:22 عصر
اگه بخواییم خیلی ساده بگیم فریم ورک تو دات نت یکسری کتابخونه است که امکاناتی رو فراهم می کنه و یکسری ساختارها برای پروژه فراهم می کنه که باعث میشه خیلی از کارها اتوماتیک انجام بشه. این پشتیبانی از ساختار و امکاناتش باعث میشه برنامه شما هم با همون ساختار باشه و مثلا تو mvc کمک می کنه UI شما از کدها برنامه تا خد زیادی جدا بشن. ولی تو WebPage ها که اونم با دات نت هست چنین امکاناتی نیست و نا خودآگا باعث میشه کد و UI و لایه دامین مخلوط بشه و به قول خودمون شیر تو شیر میشه.

شاید تا حدی بشه خود برنامه نویس این امکانات رو فراهم کنه ولی خیلی خیلی کم خواهد بود و در مواردی هم غیر ممکن میشه.

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

mtchabok
یک شنبه 01 بهمن 1391, 00:35 صبح
سلام
در php فریم ورک اول ساختار هست بعد کتابخانه .
البته اکثر فریمورکها امکان استفاده از کتابخانه شون وجود داره .

rezaonline.net
یک شنبه 01 بهمن 1391, 12:58 عصر
اکثر فریم ورک ها تحت معماری MVC هستن . (cake , zend ,CI , Yii , symfony)
فریم ورک ها توی پی اچ پی چیزی جز پیاده سازی همین ساختار با چند کلاس و صرفا آپشن اضافه مثل ORM , Authority , Webservice , و ... نیستن .
استفاده از فریم ورک ها در هر مقطعی میتونه سرعت کار رو بهبود ببخشه ، از برنامه های کوچک گرفته مثل وبلاگ و سایت که میشه با فریم ورک Codeigniter پیاده کرد تا پروژه های بزرگ که میشه از cake , Yii , zend استفاده کرد و همشون سرعت برنامه نویسی رو بالا میبرن !

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

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

hp2288ai
یک شنبه 01 بهمن 1391, 20:55 عصر
مرسی که خوندین و جواب دادین.

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

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

تری دی مکس؟ فتوشاپ؟ فلش؟ دلفی؟ دریم ویور؟ فرانت پیج؟ jQuery؟ javascript؟ سی شارپ؟ PHP؟ html؟ جاوا؟ برنامه نویسی موبایل؟ اندروید؟ ...
نرم افزار دسکتاپ؟ وب سایت؟ وب اپلیکیش؟ MIS؟ نرم افزار سیستمی؟ ...
برنامه نویس؟ تحلیل گر؟ تستر؟ طراح؟ مدیر پروژه؟ مدیر فنی؟ مدیر عامل؟ پشتیبان؟ گرافیست؟ اسلایس کار؟ ...

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

rezaonline.net
یک شنبه 01 بهمن 1391, 22:31 عصر
بحث رو منحرف نکنید .

اگر سوالی در مورد پی اچ پی دارید بفرمایید ،‌چون عنوان تاپیک
لطفا دوستان php کار جواب بدن!!! (http://barnamenevis.org/showthread.php?379773-%D9%84%D8%B7%D9%81%D8%A7-%D8%AF%D9%88%D8%B3%D8%AA%D8%A7%D9%86-php-%DA%A9%D8%A7%D8%B1-%D8%AC%D9%88%D8%A7%D8%A8-%D8%A8%D8%AF%D9%86%21%21%21)



من اگر در توانم بود جواب خواهم داد .

hp2288ai
دوشنبه 02 بهمن 1391, 18:18 عصر
شما بحث رو عوض کردی که من باید شیر یا خط کنم که چی انتخاب کنم. اگه قرار به شیر یا خط بود دیگه چه نیازی به بحثه؟ ولی جدا اگه سیستم عامل نوشی بده ما هم استفاده کنیم.

ولی آخرشم یکی نگفت که واقعا از اینایی که گفتید(zend, cacke....) استفاده می کنه یا نه؟ و تجربش چه بوده. خوب بوده یا بد بوده؟ همه گفتید اینا هستند و ایجورین و اونجورین. کسی نگفت من با یکی کار کردم و این مشکل رو داشته و یا این مزیت رو داشته!
کسی نگفت چرا از جومولا استفاده می کنن و خودشون نمی نویسن؟ کسی جواب نداد که آیا جومولا محدودیت هایی که گفتم رو داره یا نه؟
این مشکل جاهای دیگه ای هم که در مورد php گشتم بوده. همه می گن هست ولی هیچ کی ظاهرا عملی از اینا استفاده نمی کنه و فقط php ساده کار می کنه. زند رو که نصب کرده بودم ، فکر کنم باید برم چندتای دیگه رو هم دانلود کنم و خودم کارایی شون رو ببینم. یه نگاهی هم به سورس های جومولا بندازم.

rezaonline.net
سه شنبه 03 بهمن 1391, 10:30 صبح
اینجا کسائیکه از کیک استفاده میکنن
forum.cakephp.ir

قسمت اعلام نتایج سایت تعاونی سازمان سنجش از codeigniter استفاده میکنه
http://92.242.195.162/ci_sherkat/

اینجا افرادی که با Yii کار میکنن
http://www.yiiframework.com/forum/index.php/forum/41-persian/


اینم جواب این سوال

کسی نگفت چرا از جومولا استفاده می کنن و خودشون نمی نویسن؟ کسی جواب نداد که آیا جومولا محدودیت هایی که گفتم رو داره یا نه؟
http://www.yiiframework.com/forum/index.php/topic/30843-yii-vs-joomla/


ولی جدا اگه سیستم عامل نوشی بده ما هم استفاده کنیم.
شما 12 سال تجربه داری ، من 4 سال .
سیستم عامل هم 4 سال دیگه میدم خدمتتون .:چشمک:

gamron
چهارشنبه 04 بهمن 1391, 00:14 صبح
معذرت میخوام ، اما من اگه جای شما بودم الان نسخه سوم سیستم عاملم رو منتشر میکردم
یعنی هر چهار سال یک نسخه ی سیستم عامل؟عجب!!!



شما 12 سال تجربه داری ، من 4 سال .
سیستم عامل هم 4 سال دیگه میدم خدمتتون .:چشمک:

ما هم خوشحال میشیم اگه در مباحث علوم طراحی سیستم عامل شرکت کنیم. اگه در تالار هست لینکشو بذارید.

gamron
چهارشنبه 04 بهمن 1391, 00:29 صبح
کاربر hp2288ai (http://barnamenevis.org/member.php?9182-hp2288ai) به نظر من بهتره که از کتابای زبان اصلی مختلف استفاده کنین. یا تو سایت بچه های خارجی یه سرچی کنید.