نیازهای نیروی انسانی گروه برنامه نویسان

۵ مرداد ۱۳۸۹ بازدید 31 مرتبه, 3 بدون دیدگاه

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

این موضوع به حدی مهم بود واسم که تصمیم گرفتم تنبلی رو کنار بزارم و شروع کنیم یک سری نیازها که مطمئن هستم ۹۰% برنامه نویسان متشرک نظر هستن رو همراه با تجربیات شخصی خودم (درد و دل) رو از چند دیدگاه مختلف بیان کنم.

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

اول از همه از خودم و چه گذشته بر من صحبت میکنم.

در سالعها ۸۰-۷۹ یک پروژه Enterprise Application Integration یا EAI در همدان استارت خورد بود.در اون سالها چون مشتاق فراگیری و کسب تجربه در ضمینه برنامه نویسی بودم و همچنین به اقتضای سنیم نمی تونستم تحصیلات بالاتر رو ادامه بدم، به عنوان کاراموز وارد این شرکت شدم و تا سال ۱۳۸۲ به صورت غیر رسمی فعالیت داشتم. تا اینکه به سربازی رفتم.

بعد از اتمام سربازی ، تحصیلاتم رو ادامه دادم و مجددا به صورت غیر رسمی شروع به کار با این شرکت کردم. در عرض دو سال خدمت سربازی این پروژه از حالت استانی خارج و کشوری شده بود و ببسیار گسترده و پیچیده شده بود، به همین دلیل نتوانستم در توسعه اون مشارکت خوبی داشته باشم. در اون زمان چون برنامه نویسی Appliocation Desktop بازار خوبی در همدان نداشت , بیشتر شرکت های معظم از VB استفاده میکردن و من دلفی کار بودم نتونستم با شرکتی همکاری داشته باشم.

به همین دلیل شروع به فعالیت در چند رشته مختلف کردم. اما بعد ها متوجه شدم که جواب گویه من نیستند. به همین دلیل به سمت برنامه نویسی وب گرایش پیدا کردم.تقریبا از سال ۱۳۸۶ وارد طراحی و پیاده سازی وب سایت ها شدم. در این زمان با چندین شرکت و گروه به صورت راه دور مشغول به کار بودم تا در مهر ماه ۱۳۸۷ با توجه به نیاز شرکت فوق به صورت رسمی وارد این شرکت شدم و قرار شد من یکسری زیر سیستم های این پروژه رو تحت وب پیاده سازی کنم.

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

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

این روال ادامه پیدا کرد تا مرداد ماه ۱۳۸۸ من بیش از ۷ مرتبه کل سیستم رو عوض کردم یا بازنویسی کردن و هرکسی که می آمد یک نظر میداد من باید اون نظر رو عملی میکردم.در همین هنگام یک مدیر عامل جدید وارد شرکت شد که اسم و رسم و تجربیات مدیریتی خوبی در چندین شرکت و کارخانه بزرگ همدان داشتند. اما متاسفانه مدیر عامل جدید گویا تجربه کار با اقشار تحصیل کرده جامعه رو نداشتن هیچ، اطلاعات مورد نیاز سطح پائین کامپیوتری رو هم نداشتن. در مدت ۱-۲ ماه این عزیز طوری با پرسنلش برخورد کردند که انگار با یک کارگر ساده برخورد می کنه و میتونه هر طور دوست داره بگه و طرفش هم فقط بگه چشم.تازه فهمیدیم تجربه واقعی ایشان چیه، از طرفی هم پروژه وب سایت و CRM کدنویسی ودر حال تست بود که ایشان باز نظراتی در مورد تحوه پشتیبانی دادن که سیستم فعلی کنار گذاشته شد برای بعدن ها و مجبور شدیم نظرات جدید رو پیاده سازی کنیم.در همین یک سال بارها من رو به جای نیروهای پشتیبانی به سایر استانها و مراکز فرستادن یا از تخصصم در زمینه نصب ویندوز استفاده کردن :) )
احساس میکردم که دارم عقب گد میکنم بجای پیشرفت. آخر به این نتیجه رسیدم که نمی توانم با این روال کار کنم و در مهر ماه ۱۳۸۸ استفعا دادم. در صورتیکه تو این مدت چند پروژه کوچیک و بزرگ سفارش گرفته بودم و تحویل دادم. در این شرکت هیچ کاری نکردم.

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

نیازهای من به عنوان یک نیروی انسانی برنامه‌نویس:

۱. رعایت کمال احترام در برخورد با یک برنامه نویس :

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

۲- شناخت کافی از خصوصیات و شخصیت برنامه نویسان :

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

۲-۱-بیشتر برنامه نویسان نیاز به محیط کاری ساکت و بی سرو صدا دارند و بلعکس خیلی ها در سر و صدا زیاد راحت هستند یا خیلی ها در هنگام کار از یک سری آهنگ های راک و …. اونم با صدای بلند گوش دهند.

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

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

۲-۳- یک برنامه نویس بدلیل کشش و نیاز نوع کارش، فشار زیادی به اعضای بدنیش وارد میکنه، مثل مغز، ستون فقرات، بد خوابی یا کمبود خواب، گرسنگی، خستگی بیش ار حد چشمان به دلیل نگاه کردن مستقیم به مانیتور و پلک نزدن.این فشار ها مخصوصا فشاری که به مغز خود برای تجزیه و تحلیل چند موضوع در ذهنشون انجام میدن باعث میشه که در یک دوره زمانی کوتاه بدن برنامه نویس کم میاره و در یک حالت standBy فرو میره. اینجاست که برنامه نویس نمی تونه مثل همیشه کار کنه و احساس افسردگی و بی حوصلگی میکنند اینجاست که به قول ما برنامه نویس ها میگیم مخش چوش آورده و هر درخواستی برای برنامه نویس بفرستیم با پیام خطا های run time error 200 یا overflow مواجه میشیم. تو این زمان برنامه نویس نیاز داره برای ساعتی یا چند روز فقط کاری دیگری جز کدنویسی انجام دهد. و ترجیحا از محیط کار دور باشه.

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

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

۲-۴- خصوصیات خاص برنامه نویسی(نو فعالیت) و برنامه نویس :
من اعتقاد دارم که یک برنامه نویس نمی بتواند همیشه نمی تواند یک پروژه رو در یک بازه زمانی مثل ساعات اداری ( ۸ ساعت کار در روز) ۸ صبح شروع به کد نویسی کنند و در پایان ساعات اداری در هر کجای که از کار قرار دارد، دست از کار بکشد و فردا از همون نقطه مجدد ادامه دهند.

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

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

دکتر علی شریعتی : دموکراسی می گوید : رفیق، حرفت را خودت بزن،

۱۹ فروردین ۱۳۸۹ بازدید 264 مرتبه, 7 ۱۱ دیدگاه

این نکته رو از دکتر علی شریعتی رو خوبه خوب بخونید.

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

آیا ما در حال حاضر مسلمانیم؟

چگونه یک برنامه نویس موفق شویم

۲۳ دی ۱۳۸۸ بازدید 236 مرتبه, 4 ۱۷ دیدگاه

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

برنامه نویس موفق هیچ وقت سر وقت در محل کارش پیدایش نمیشود

معنای نیمه شب ها برای یک برنامه نویس با نیمه شب انسان های عادی تفاوت دارد . نیمه شب برای یک برنامه نویس یعنی ۱۰ صبح برای یک انسان عادی

یک برنامه نویس همیشه تعدادی لغات تخصصی در آستین دارد که میتواند با سر هم کردن آنها دیگران را گیج کند

برای یک برنامه نویس هیچ راه حلی بالاتر از Restart کردن وجود ندارد

نام بیل گیتس برای هر برنامه نویس موفق مقدس است و معبدش مایکروسافت و گوگل میباشد.

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

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

یک برنامه نویس موفق اکثراً قهوه و چایی ولرم مینوشد.

برنامه نویسی موفق است که کلمه نظم را خودش معنا کرده باشد

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

یک برنامه نویس موفق میداند که فست فود تنها غذای جسم اوست و یک موزیک متالیکا بخصوص مال ۱۹۹۲ غذای روحش

یک برنامه نویس موفق به ندرت عصبانی میشود ولی وای به آن لحظه که عصبانی شود.

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

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

برنامه نویس موفق هیچگاه خواب زن های برهنه را نمیبیند

همیشه مشکوک است ولی خود را آرام نشان میدهد.

یک برنامه نویس موفق همیشه با دیوان شمس لاس میزند ولی همیشه هم فاصله اش را با آن حفظ میکند

اوج زندگیش را در سن ۱۸ تا ۲۶ سالگی میداند.

برنامه نویس موفق همه بچه ها را دوست دارد تا وقتی گریه نکنند.

فقط یک برنامه نویس موفق است که معنای ۵۴ ساعت بیداری و کار مداوم را درک میکند.

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

۴۰ سالگی زمان بازنشستگی برنامه نویس موفق است ، یعنی زمانی که به خود میگوید: میخواهم زن بگیرم

مردم برای یک برنامه نویس موفق نقش ابلهانی را دارند که فقط میتوانند سفارش پروژه ای را بدهند که خودشان هم دقیقا نمیدانند هدفشان از سفارش آن پروژه چیست

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

کابوس او شرکت در جلسه ای با حضور کاربران عوام است و بلاهای طبیعیش بهم ریختن ویندوز

اینترنت را قطع کنید تا ببینید او چه رفتارهای ناهنجاری انجام میدهد.

بدترین دعوا را فقط او میتواند با مدیر عامل داشته باشد ولی ککش هم نگزد

برنامه نویس موفق OOP را هضم کرده و با SOA رقص تانگو میکند.

همیشه عجله دارد ولی مرد یک دو سه نیست.

خب! کدومتون یک برنامه نویس موفق هستید؟

توابع تاریخ شمسی جهت استفاده در Mysql

۵ مهر ۱۳۸۸ بازدید 205 مرتبه ۱۴ دیدگاه

این پروژه رو تقدیم می کنم به سازمان مدیریت برنامه نویسان php

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

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

SELECT month(FROM_UNIX(regdate) as mo, SELECT year(FROM_UNIX(regdate) as yr, COUNT(*) as total FROM table GROUP BY mo,yr ORDER BY mo DESC yr DESC

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

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

من در این پروژه با استفاده از قابلیت تعریف پروسیجر و تابع که در نسخه ۵.x.x  به بعد ارائه شد.  یک سری تابع  ، همانند توابع MySql شبیه سازی کردم با این تفاوت که این توابع نتیجه را به صورت شمسی بر میگردانند.

در این پروژه ۴ تا بع کاربردی date(),month(),year(), monthname() شبیه سازی شده.

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

۱- دریافت فایل توابع : دریافت

۲- ایپورت کردن فایل در دیتابیس مورد نظر

بعد از انجام مراحل بالا برای تست توابع می تونید. از این کوئری برای تست استفاده کنید.


SELECT pnum(pdate(NOW())),pyear('2009-09-22'),pmonth('2009-09-22') , pmonthname( NOW());

مثال آرشیو ماهیانه


SELECT pmonth(FROM_UNIX(regdate) as mo, SELECT pyear(FROM_UNIX(regdate) as yr, COUNT(*) as total FROM table GROUP BY mo,yr ORDER BY mo DESC yr DESC

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

نکته : در حال حاضر فقط می توان این توابع را از نسخه ۵.۱.به بالا استفاده کرد

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

Vote on iDevCenter

قانون و منطق

۱۰ خرداد ۱۳۸۸ بازدید 96 مرتبه, 2 ۶ دیدگاه
دانشجویی پس از اینکه در درس منطق نمره نیاورد به استادش گفت: قربان، شما واقعا چیزی در مورد موضوع این درس می دانید؟

استاد جواب داد: بله حتما. در غیر اینصورت نمیتوانستم یک استاد باشم. دانشجو ادامه داد: بسیار خوب، من مایلم از شما یک سوال بپرسم ،اگر جواب صحیح دادید من نمره ام را قبول میکنم در غیر اینصورت از شما میخواهم به من نمره کامل این درس را بدهید.

استاد قبول کرد و دانشجو پرسید: آن چیست که قانونی است ولی منطقی نیست، منطقی است ولی قانونی نیست و نه قانونی است و نه منطقی؟
استاد پس از تاملی طولانی نتوانست جواب بدهد و مجبور شد نمره کامل درس را به آن دانشجو بدهد.

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

همسر شما یک معشوقه ۲۵ ساله دارد که منطقی است ولی قانونی نیست. و این حقیقت که شما به معشوقه همسرتان نمره کامل دادید در صورتیکه باید آن درس را رد میشد نه قانونی است و نه منطقی

منبع : یادم نمیاد

بازگشت دوباره من

۱۴ فروردین ۱۳۸۸ بازدید 95 مرتبه, 2 ۸ دیدگاه

بعد از ۱ سال و نیم  دوری از نوشتن و لاگ کردن تصمیم رو جدی کردم که برگدم و شروع کنم با لاگ کردن، این روزها من هم مثل دیگران خیلی درگیری دارم  اما در سال جدید میخوام برای وبلاگم وقت بزارم و آموزش جی کوئری شروع کنم . همینظور هم در مورد cakephp و کلا php هر چیزی که یاد میگیرم رو اینجا به اشتراک بزارم.

البته فعلا اینجا یک کمی کار داره ، یواش بواش ردیفش میکنم

نحوه نصب و راهندازی jquery

۲۳ بهمن ۱۳۸۶ بازدید 130 مرتبه, 3 ۱۴ دیدگاه

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

در حالت کلی سه مدل برای دانلود وجود دارد :
۱-  Minified : که خیلی فشرده شده و برای استفاده تجاری استفاده میشه و ۱۵ کیلوبایت هم می باشد.(به دلیل لود شدن سریع)

۲- Uncompressed : که به صورت غیر فشرده هست و حجمش حدود ۹۴ کیلو بایت می باشد. و برای توسعه یا فراگیری مورد استفاده قرار میگیرد.

۳- Packed :  حجمی حدود ۲۹ کیلوبایت داره و به صورت gzip فشرده نشده

در حال حاضر آخرین نسخه jquery ورژن ۱.۲.۳ هست.

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

طریق نصب در صفحات همانند کد های زیر می باشد.

اما نحوه نوشتن کدها : در ۲ حالت ما میتونیم کدهای خودمون رو بنویسیم ۱. به صورت inline : یعنی کدها رو در همون صفحه تایپ کنیم. من پیشنهاد میدم از این روش کمتر استفاده کنید. و سعی کنید زمانی استفاده کنید که کد مربوز به همین صفحه باشه. اگر قرار کد یا تابعه ای که می نویسید در صفحات دیگر هم استفاده شوند. حتما از روش دوم استفاده کنید. ۲. به صورت  external :  در این حالت شما یک فایل با پسوند sample.js  ایجاد میکنید. و تمامی کد های خود را در این فایل مینویسید. و سپس فایل sampale.js را در صفحات خود فراخوانی میکنید. بصورت زیر :

<html>
<head>
<script type="text/javascript" src="path/to/jquery.js"></script>
<script src="path/to/sample.js" type="text/javascript"></script>
</head>
<body>
<a href="http://jquery.com/">jQuery</a>
</body>
</html>

و یک پیشنهاد دیگر سعی کنید تمام کد هاتون به صورت تابع نوشته بشه . تا بهینه تر بتونید استفاده کنید.

خوب ما موفق به نصب جی کوئری شدیم. فردا اولین کد خودمون را خواهیم نوشت

مقدمات یادگیری JQUERY

۲۲ بهمن ۱۳۸۶ بازدید 125 مرتبه, 1 ۱ دیدگاه

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

اما از همه مهمتر  شما باید با تگ ها و المنت های html و xhtml  آشنایی داشته باشیم. در این پست سعی می کنم موارد ضروری، که باید حتما بلد باشید رو مختصری توضیح میدهم!!

هر عنصر یا المنت می توانید دارای بخش های زیر باشد.

۱- صفات (Attribute’s) : شامل صفت هایی هستند که ما به عنصرهای داخل صفحات میدهیم. مانند title,dir,lang, hight,widthو
name ……


<div dir="rtl" lang="fa" title="hello"></div>

نکته : در خیلی از عنصر ها صفات خاص دارند یا صفاتی که در سایر عنصر ها هستند رو ندارند.

۲- شناسه یکتا ( ID ) : ما می توانیم به هر عنصر یک شناسه یکتا اختصاص بدیم تا بتونیم به راحتی از سایر عنر های هم نوع شناسایی و انتخاب کنیم


<div id="maindiv"></div>

3- کلاس (class) : تعریف کلاس هم یک نوع شناسه هست. هم میتواند یکتا باشد. هم یکتا نباشد. و بیشتر در صفحاتی که بر پایه css طراحی می شود استفاده می شود.


<div class="hidediv"></div>

4- سبک (style) : به کمک این صفت می توانید صفاتی که برای ظاهر عنصر مورد استفاده میگیرند رو در این صفت و inline قرار بدید


<div style="width:30px; height:40px; background:#CCCCCC;"></div>

سوال اینجاست اینها به چه درد ما میخوره؟!

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

در مطلب بعدی خواهیم دید که ما توسط jquery  چه طور به کمک موارد بالا یعنی شناسه ها ، کلاسها یا نوع عنصر به راحتی عنصر مورد نظرمون رو پیدا خواهیم کرد.

JQuery (جی کوئری) چیست

۲۱ بهمن ۱۳۸۶ بازدید 214 مرتبه, 7 ۷ دیدگاه

JQuery یک فریمورک جاوا اسکریپت می باشد. اما اصلاً یک فریمورک چیست؟ و فقط مورد نیاز یک برنامه‌نویس است یا یک طراح وب هم می‌تواند از آن بهره ببرد؟

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

همینطور که در بالا توضیح داده شد. jquery یک کتابخانه از توابع آماده شده برای جاوا اسکریپت می باشد. در این زمینه فریمورک های دیگری هم وجود دارند. همانند Prototype و MooTools و فریمورک معروف یاهو با نام YUI .که هر کدوم از این فریمورک ها داری معایب و مزایای مختص خود هستند.

ادامه ی نوشته

بروز رسانی شمارنده مطالب + امکانت جدید برای موبل تایپ ۴

۲۰ بهمن ۱۳۸۶ بازدید 125 مرتبه, 3 ۲۷ دیدگاه

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

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

اما در امتی ۴ لیست بیشترین بازدید قابل استفاده نیست. به همین دلیل به فکر ایجاد یک هک دیگه برای امتی ۴ شدم. که امکاناتی بیشتر از یک شمارنده داشته باشه.

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

تغییرات انجام شده عبارت است :

شمارنده مطلب : (بهینه شده)

نمایش شمارنده :( بهینه شده)

تاپ اینتری یا لیست بیشترین بازدید : (اضافه شده در این نسخه)

مطالب اتفاقی : (اضافه شده در این نسخه)

ادامه ی نوشته