• 1 رای - 5 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
پیش به سوی جوملا! + مقداری مخلفات و صحبتهای عمومی تر دربارهء برنامه نویسی!
#1
امروز جوملا نسخه 2.5 فارسی رو دانلود کردم تا بشینم جوملا یاد بگیرم.

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

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

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

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

اما ظاهرا مامبو بهترین انتخاب نبود. بعد از مقداری پرس و جو یکی بهم گفت برو دنبال مامبو که منم رفتم دنبالش. اما بعدا متوجه شدم ظاهرا جوملا چیز خیلی بهتریه و کاربران خیلی بیشتری داره. راستش من خودمم چیزهایی از مامبو دیدم و کدهاش رو هم نگاه کردم بنظرم ناشی گری هایی درش دیده میشد و کدهاش رو انگار افراد ناشی نوشته بودن. مثلا برای یک جایی که میخواستی با CSS استایل بدی به یک بخشی از اون، برای عنصر مورد نظر هیچ id یا class ای نذاشته بودن و هرچی هم گشتم نتونستم جایی که اون کد رو خروجی میداد پیدا کنم (البته اگر بیشتر میگشتم و تحقیق میکردم شاید پیدا میشد، ولی بهرحال این بنظر بنده یک نقص طراحی بود). یا مثلا برای یک چیز ساده ای مثل اینکه بین مطالب مجزا خط بندازی امکانی نداشت (تاجاییکه دیدم و پرسیدم) و در خروجی استاندارد خودش تفکیک راحت و سریع مطالب از هم مشکل بود، اما خوشبختانه در این مورد موفق شدم خودم در کد منبع چنین امکانی رو اضافه کنم.
تاجاییکه یادمه، البته اون زمان و اون نسخه، خبری هم از شیء گرایی و MVC و این حرفا نبود در کدهاش.

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

بنظر بنده استفاده از چیزهایی مثل CMS در این بین خیلی خوب و به صرفه است. چون هم از نظر فنی و امنیت و امکانات در سطح بهتری هستن (نسبت به کارهای شخصی خیلی افراد) و هم از نظر صرفه و عدم اتلاف وقت و انرژی ارزشمند استفاده از اونا کاملا معقوله. بجای اینکه مدام کدهای کم ارزش و کم کیفیت و تکراری سرهم کنیم میتونیم وقت و انرژی خودمون رو روی کارهای خلاق تر و مهمتر و مفیدتر و پیشرفته تر و یادگیری و آپدیت تئوریک روز افزون صرف کنیم. واقعا این همه کد زدن و برنامه های مشابه نوشتن تاجاییکه عملا دیدم موجب نمیشه آدمها سریع و زیاد پیشرفت کنن. شاید در نوشتن برنامه های تجاری و کلیشه ای دستشون باز و راحت و سریع بشه و کمی هم به پیشرفت اطلاعاتی و فنی و کیفیت بالاتر برسن، اما بازم در خیلی موارد بهینه و کافی نیست بنظر بنده و خیلی موارد تکراری و نه چندان خلاق در کارهای تجاری وجود داره و میزان یادگیری حداکثری نیست؛ و بسیاری ضعفها و نقصها در برنامه نویسان و کارهاشون میتونه همچنان حتی بعد از سالها تجربه و انبوهی کد زدن باقی بمونه و حتی متوجه هم نباشن.
تشکر شده توسط : Y.P.Y pary_daryayi
#2
نقل قول:البته جوملا هم مثل خیلی از پروژه های دیگه از ابتدا اینقدر کامل و اصولی و دقیق نبوده و به مرور تکامل و پیشرفت پیدا کرده. مثلا در نسخه های قدیمی تر شیء گرا نبوده.
من نمی دونستم، 100% مطمعنی؟
وبلاگ: Yousha.Blog.ir

صدام: "اگر با ارتش شاه ایران طرف بودیم، یک ماهه جنگ را می بردیم"
http://gulfnews.com/opinion/thinkers/ira...i-1.500997
تشکر شده توسط :
#3
جوملا که هر روز باید آبدیت بشه!
یه گوشه چشمی به وردپرس داشته باشی مطمئنم نظرت عوض میشه
تشکر شده توسط :
#4
اگه یه نگاهی به تاریخچه جوملا داشته باشی میبینی که جوملا ابتدا یک مامبو بیس بوده .
و به مرور تکمیل شده .
منتها نقدی که به شخصه میتونم به این سیستم بگیرم پیاده سازی نادرست دیتابیس و محدودیت های بیش از اندازه در لایوت و تم است همچنین محیط کاربری شلوغ که در نگاه اول مشتری گیج میشود!
جوملا بطور پیاپی داره بروزرسانی میشه که این هم خوبه هم بد .
خوبیش اینه که شما مطمئنی که سیستم داره روش کار میشه (نه مثل مامبو که رفته به یک خواب چند ساله) و بدیش اینه که شما نمیتونی یه سایتی رو با جوملا بسازی برای یک بابایی و ولش کنی به اومون خدا !
چون بعد از هر ورژن طبیعتاً فیکس باگهایی صورت میگیره و اکثر ارتقا ها به لحاظ امنیتی انجام میشه . پس باید حتماً ارتقا بدید و لی مشتری که ...

اگه یه ذره تحقیق میکردید سیستم های دیگه ای هستن مثل elxis که یک سیستم مامبو بیس هست .
به نظرمن استفاده از سیستم هایی چون elxis بهتر هست .

مسئله بعدی ایده جالب ( و موزیانه) چند نفر که با تغییر چند خط ساده جوملا ، یک سیستمی رو به اسم nationalcms.ir ارائه دادن و دارن از این راه پرتالهای سازمانی رو طراحی و پشتیبانی میکنن و ... !Tongue

اگر وبلاگ بنده رو نگاه کنید چندین سیستم خوب رو معرفی کردم .
10 سیستم برای سایت شخصی
http://www.rezaonline.net/blog/10cms-for...bsite.html

10 سیستم برای سایت سازمانی
http://www.rezaonline.net/blog/10cms-for...ortal.html

الکسیس فارسی
elxiscms.rezaonline.net

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

موفق باشید
تشکر شده توسط : Goback oia undefined Hamid
#5
(۱۳۹۱ اردیبهشت ۱۷, ۱۱:۰۰ ب.ظ)Y.P.Y نوشته:
نقل قول:البته جوملا هم مثل خیلی از پروژه های دیگه از ابتدا اینقدر کامل و اصولی و دقیق نبوده و به مرور تکامل و پیشرفت پیدا کرده. مثلا در نسخه های قدیمی تر شیء گرا نبوده.
من نمی دونستم، 100% مطمعنی؟
اینجا نوشته: http://en.wikipedia.org/wiki/Joomla
Joomla is written in PHP, uses object-oriented programming (OOP) techniques (since version 1.6[2])
میگه از نسخهء 1.6 شیء گرا شده.



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

یه سوال: بیشتر سایتهای داخلی با وردپرس هستن یا با جوملا و چرا؟
تشکر شده توسط : Y.P.Y
#6
جوملا و وردپرس هر دو خوب به نظر میان ( تعریف زیاد میکنن ازشون )
البته من با دروپال راحت تر بودم .
مخصوصا با این که برم دستکاریش کنم Smile به نظرم پیاده سازیش تمیز تره .
تشکر شده توسط :
#7
منم خیلی تعریف دروپال رو شنیدم. در عین ساده بودن میگن خیلی قوی هست. چند نفری رو هم میشناسم که باهاش کار می کنن.
البته من که خودم از سی ام اس استفاده نمی کنم و بیشتر ترجیح میدم از فریم ورک استفاده کنم و سی ام اس بر پایه نیاز خودم رو داشته باشم. البته بستگی به مد پروژه هم داره. بعضی وقتها نیاز مشتری دقیقا یک سی ام اس مثل دروپال یا جوملا هست( بدون هیچ تغییری ) خوب قاعدتا همین رو بهش توصیه می کنم و فقط هزینه نصب رو می گیرم.
تشکر شده توسط : undefined
#8
نقل قول:تاحالا که بیشتر افراد میگفتن جوملا جوملا. منظورم بروبچ خودمونه.
ضمنا از نظر تعداد کاربر میگن دومین CMS است (بعد از وردپرس).

دقیقا. نمیدونم چرا همه فقط جوملا رو میشناسن Huh(اما از نظر من جفتشون مزخرفن Big Grin)

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

به نظر شما استفاده از یک فریم ورک مناسب(با توجه به معیار های پروژتون) نسبت به یک سی ام اس اماده بهتر نیست؟
هر چیزی که در جستن آنی آنی...
غایب
تشکر شده توسط :
#9
(۱۳۹۱ اردیبهشت ۱۸, ۱۲:۴۹ ب.ظ)ehsan_php نوشته: به نظر شما استفاده از یک فریم ورک مناسب(با توجه به معیار های پروژتون) نسبت به یک سی ام اس اماده بهتر نیست؟
واسه چی بهتر باشه؟
سی ام اس خب از همش راحتتر و سریعتره. هم از نظر یادگیری و هم از نظر انجام کار.
وقتی میشه کاری رو با سی ام اس سه سوت درست کرد چرا فریمورک و برنامه نویسی؟
بخصوص کار تجاری که باشه هرچی کم زحمت تر و سریع تر بهتر.
تشکر شده توسط :
#10
اولاً وردپرس یک سیستم بلاگ حرفه ای بیش نیست(بیشتر هم بخاطر سیستم پلاگین قدرتمنده).

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


نقل قول:سوال: ایا جوملا تمام نیاز های شما رو جهت توسعه و تولید یک نرم افزار جدید بر طرف میکنه؟
تمام نه، ولی بسیار.
وبلاگ: Yousha.Blog.ir

صدام: "اگر با ارتش شاه ایران طرف بودیم، یک ماهه جنگ را می بردیم"
http://gulfnews.com/opinion/thinkers/ira...i-1.500997
تشکر شده توسط : undefined


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان