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

آنچه بعد از دو سال برنامه‌نویسی اندروید آموختم

مرتضی مرادی  7 سال پیش  6 سال پیش
+71 -3

این مطلب ترجمه آزادی است از مطلب  Aritra Roy که در وبسایت وی منتشر شده است.

هنوز آن روزها در سال ۲۰۱۴ را به خاطر می‌آورم. روزهایی که تصمیم گرفتم برنامه‌نویسی اندروید را شروع کنم که یکی از بهترین تصمیم‌های زندگی‌ام بود. از آن موقع حدود دو سال و نیم گذشته و من بخت این را داشتم که خیلی چیزها را یاد بگیرم. وقتی شروع به یادگیری کردم مربی یا کسی را نداشتم که به من یاد بدهد چطور کارها را به شیوه درست انجام بدهم. خیلی اشتباه مرتکب شدم که بعدها با صرف وقت زیاد آن‌ها را تصحیح کردم.

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

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

۱- چرخ را دوباره اختراع نکن

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

جایزه: Android Arsenal تقریبا فهرست کاملی از همه کتابخانه‌های اندروید دارد. حتما سری به این سایت بزنید.

۲- کتابخانه‌ها را هوشمندانه انتخاب کن

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

توضیح مترجم: حتما حواستان به مجوزهای آن‌ها هم باشد. هر کتابخانه کدبازی را نمی‌توان در برنامه‌های تجاری و کدبسته استفاده کرد!

۳- بنشین و یک فنجان قهوه بخور و کدهای بیشتری را مطالعه کن

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

یکی از خوبی‌های اندروید این است که کدباز است. بپر توی کد و ببین چطور آن را پیاده‌سازی کرده‌اند. هزاران کتابخانه کدباز در گیت‌هاب است. یکی را انتخاب کن و ببین چطور آن را پیاده‌سازی کرده‌اند.

جایزه: اینجا فهرستی مدیریت شده از بهترین کتابخانه‌های اندروید است و اینجا هم فهرستی از تقریبا همه کتابخانه‌های کدباز اندروید. قابلی نداشت!

۴- به خاطر خدا استانداردهای کدنویسی مناسبی را رعایت کن

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

«کد مثل شعر است»

اگر کدی نوشتی و همکارت چند روز با تو حرف نزد اعتراض نکن!

جایزه: برای شروع اینجا و اینجا را بخوانید.

۵- به ProGuard احتیاج داری، واقعا احتیاج داری

هرگر هرگز هرگز برنامه را بدون استفاده از ProGuard در گوگل‌پلی (و کافه‌بازار و سایر بازارهای مشابه) منتشر نکن. پروگارد نه تنها برنامه شما را کوچک‌تر می‌کند، بلکه آن را به هم ریخته (Obfuscate) هم می‌کند که باعث می‌شود فهمیدن،‌ کپی‌کردن و تغییر آن با مهندسی معکوس سخت‌تر شود.

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

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

 

۶- از معماری مناسب استفاده کن

همیشه از خودت به خاطر انتخاب یک معماری مناسب در اول کار، سپاسگزار خواهی بود. می‌توانی از MVP یا همان Model-View-Presenter استفاده کنی که برنامه را به لایه‌های متفاوتی تجزیه می‌کند تا مدیریت آن ساده‌تر باشد. این باعث می‌شود تا انعطاف کد بالاتر برود و زمان نگهداری آن کاهش یابد.

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

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

 

۷- رابط کاربری مثل یک جک است، اگر نیاز به توضیح داشته باشد، حتما بیمزه است

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

«احتمالا باید بیشتر از طراحی حذف کنی تا این که چیزی به آن اضافه کنی. همیشه طراحی را ساده و کمینه نگاه دار»

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

۸- آمار و تحلیل بهترین رفیق تو است

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

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

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

۹- نینجای بازاریابی باش

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

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

اگر در کارت جدی هستی و می‌خواهی که مخاطب زیاد داشته باشی، باید وقت و پول خود را بر روی یک برنامه خوب بازاریابی هزینه کنی. قبل از شروع برنامه‌های تبلیغی مطمئن شو که برنامه‌ات و ویژگی‌های آن واقعا پایدارند. قطعا می‌خواهی در ازای هر ریالی که پرداخت کردی بیشترین درآمد را به دست بیاوری، درست است؟ وقت بگذار و ببین رقبایت چه کسانی‌اند و چطور می‌خواهی با آن‌ها رقابت کنی.

۱۰- وقت آن است که برنامه‌ات را بهینه کنی

این چیزی است که خیلی از ما معمولا انجام نمی‌دهیم ولی تو باید و حتما آن را انجام بدهی زیرا به آن نیاز داری. تفاوت زیادی است بین نوشتن کد و نوشتن کد «بهینه». کدی بنویس که سریع اجرا بشود، حافظه کمتری بگیرد و کمتر از فضای ذخیره‌سازی دستگاه را اشغال کند. یک برنامه غیر بهینه در شرایط معمول به خوبی کار می‌کند اما اگر آن را زیر بار و فشار زیاد ببری تازه متوجه می‌شوی که چه گندی است. حافظه مورد استفاده برنامه را بررسی کن و مواظب سرریز حافظه باش. همیشه به یاد داشته باش: یک سوراخ کوچک می‌تواند یک کشتی بزرگ را غرق کند. بر روی درک شیوه عملکرد زباله‌روب جاوا وقت بگذار. حافظه Heap را بررسی و تحلیل کن و اشیای زنده را ببین.

نکته حرفه‌ای: از Leak Canary برای پیدا کردن سرریزهای حافظه استفاده کن. این برنامه با خودکار کردن این کار خیلی در زمانت صرفه‌جویی می‌کند.

 

۱۱- با تنظیم بیلد گریدل پنج ساعت در هفته در وقت صرفه‌جویی کن

بسیار محتمل است که از اندروید استودیو و گریدل برای توسعه برنامه‌های اندروید استفاده کنی. گریدل عالی ولی کند است و وقتی پروژه کمی بزرگ‌تر شود کندتر هم می‌شود. ساعت‌های بی شماری را به باد می‌آورم که بیکار می‌نشسم تا بیلد گریدل تمام شود. در زمان‌های شلوغی کار به راحتی یک ساعت از وقت من صرف بیلدهای گریدل می‌شود و این یعنی ۵ ساعت در هفته و ۲۰ ساعت در ماه.اما راه‌هایی هست تا گریدل را سریع‌تر کنی.

برای این کار اینجا و اینجا را ببین. با استفاده از این رهنمودها و بهینه‌سازی مناسب، زمان بیلد من از چهار دقیقه به حدود ۳۰ ثانیه رسید.

۱۲- تست کن و تست کن و بعد باز هم تست کن

هیچ چیزی از تست کردن مهم‌تر نیست. مهم‌ترین کار در لیست کارهایت باید تست کردن باشد.

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

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

۱۳- چندپارگی اندروید شیطانی است در لباس مبدل

android-fragmentation

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

برای مثال هیچ برنامه‌نویس اندرویدی وجود ندارد که تا به حال از SharedPreferences استفاده نکرده باشد. ولی همین کتابخانه بسیار پر کاربرد در گوشی گلکسی S سامسونگ که اندروید ۲٫۲ دارند از کار می‌افتد (گزارش خطا را در اینجا ببین).

«هیچگاه فرض را بر راین نگذار که چیزی کار می‌کند فقط به خاطر این که این طور به نظر می‌رسد»

۱۴- از همین امروز از Git استفاده کن

اگر هنوز از گیت (Git) استفاده نمی‌کنی همین الان برو سراغش.وقتی توسعه اندروید را شروع کردم متاسفانه نمی‌دانستم که Git چه جواهری است. هر روز یک نسخه از کل پروژه را بکاپ می‌گرفتم و یک نسخه را در هارد خودم و یکی را هم در ابر (Cloud) ذخیره می‌کردم. به نظر احمقانه می‌آید؟ واقعا احمقانه است!گیت به طرز حیرت انگیزی کار را بهبود می‌دهد. اگر یکی از من بپرسد یک ابزار را نام ببر که هر روز از آن استفاده می‌کنی و نمی‌توانی استفاده از آن را متوقف کنی پاسخ من همیشه و همیشه گیت است.مطمئنم تو هم بعد از چند روز استفاده از گیت عاشقش می‌شوی و می‌خواهی بدانی که Git چطور کار می‌کند. پس حتما اینجا را ببین.

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

جایزه: اگر تازه شروع کرده‌اید و نمی‌توانی هزینه اشتراک ماهانه GitHub برای مخاذن خصوصی را بپردازی، می‌توانی از BitBucket استفاده کنی که رایگان است.

۱۵- کار را برای هکرها دشوار کن

ماهیت کدباز اندروید آن را در برابر هکرها نفوذپذیر می کند. هر برنامه اندروید به سادگی می‌تواند دی‌کامپایل، مهندسی معکوس، باز، تحلیل و دستکاری شود.مطمئنا نمی‌خواهی که این اتفاقات برای برنامه‌ات بیافتد؟باید بدانی که چطور کلیدهای API برنامه را به صورت امن در خود برنامه ذخیره کنی. اگر با داده‌های حساس کاربر کاربر کار می‌کنی، باید بدانی که چطور آن‌ها را رمزنگاری کنی و این که چه الگوریتم‌هایی باید برای کار استفاده کنی که هم امن باشند و هم سریع٫همچنین باید کلیدهای رمزنگاری را به صورت امن یا در سرور یا به صورت محلی و در خود گوشی (اگر لازم است) ذخیره کنی. همچنین باید کاری کنی که امکان بکاپ‌گیری از داده‌ها توسط ADB یا Android Debug Bridge ممکن نباشد. اگر داده‌های حساس را در دیتابیس ذخیره می‌کنی حتما باید آن‌ها را درهم‌ریخته (Obfuscate) کنی.اگر برنامه‌ات نسخه پولی دارد که به راحتی بشود آن را هک و منتشر کرد، قطعا خسارت بزرگی به کسب و کارت وارد می‌شود. درست است؟چند راه برای جلوگیری از تغییر دادن برنامه وجود دارد. چیزی به اسم امنیت ۱۰۰ درصد وجود ندارد. هر هکر ماهر و با ابزارها و امکانات مناسب و با صبر و حوصله می‌تواند برنامه را هک کند.تنها کاری که می‌توانی بکنی این است که کار هکر را سخت‌تر و حتا خیلی سخت‌تر کنی.

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

۱۶- روی دستگاه‌های ضعیف توسعه بده

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

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

۱۷- روی یادگیری الگوهای طراحی وقت بگذار

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

از همین امروز وقت بگذار تا الگوهای طراحی جاوا (Java Design Patterns) را فرا بگیری. این یک پروژه جاوا در گیت‌هاب است که همه الگوهای طراحی را در عمل نشان می‌دهد.برای شروع، مهم‌ترین آن‌ها مثل Singleton و Adapter و Factory Method و Itrator و Dependency Injection و معماری Event Driven و Callback و Strategy و Facade و Producer/Consumer را یاد بگیر.

زیاد به نظر می‌آید؟ واقعا این طور نیست. وقتی که با اینها کار کنی عاشق‌شان می‌شوی.

نکته حرفه‌ای: کتابهایی مثل الگوهای طراحی GoF و Refactoring نوشته مارتین فالر (Martin Fawler) و Effective Java نوشته Joshua Bloch را بخوان.

۱۸- وقت آن است که تو هم چیزی را برگردانی

همه ما کمک‌های زیادی را ار آدم‌های دور و برمان و از اینترنت گرفته‌ایم. این را بپذیریم.

copying-and-pasting-book-cover

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

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

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

+3 0
عالی بود .ممنون (7 سال پیش)
+6 0
من قبلا این مطلب رو خونده بودم. ولی به بهوونه ترجمه روان و خوب شما مجددا خوندم. اول از همه از شما تشکر می‌کنم که وقت خودتون رو گذاشتید به این خوبی مطلب رو ترجمه کردید. دوم خوندن این مطلب یه حقیقت تلخی رو برای من یادآوری کرد که متاسفانه جامعه برنامه‌نویس ایران (شاید فقط ایران اینطور نیست اما من فقط با برنامه‌نویس‌های ایرانی معاشرت داشتم) خیلی اهل تولید نیست و بیشتر مصرف‌کننده‌ست. داخل انجمن‌ها فعالیت کمی میکنن و کم حاضر میشن دانسته‌هاشون رو تقسیم کنن. شاید دلایل اقتصادی داره که وقت نمیکنن، قصد قضاوت ندارم. اما به نظرم خوندن این مطلب باید به ما یادآوری کنه که ما هم اندازه خودمون توی جامعه برنامه‌نویسی‌ای که هستیم محتوا تولید کنیم. اگر فقط کسایی که این پست رو لایک کردن یکی از لینک‌هایی که توی پست مطرح شده رو بخونن و برای بقیه منتشر کنن تمام برنامه‌نویس‌های اندروید یک گام حرفه‌ای‌تر میشن. بازم ممنون از شما. ضمنا از اونجایی احساس کردم شاید علاقه مند باشید اگر توی این بحث ( لینک ) هم مشارکت کنید خوشحال میشم. (7 سال پیش)
+3 0
عالی بود.باعث شد واقع بینانه تر به این صنعت نگاه کنم. و افکاری که در این رابطه داشتم رو به اشتباه بودنشون پی ببرم. (7 سال پیش)
+3 0
سلام خیلی خوب بود و واقعا در مورد مسعله ی اخر باید اینو بگم که واقعا هستن والی البته بعضی و تعدادشون زیاد نیس که زورشون میاد علمشون رو به اشتراک بذارن و به چشم دیدم که میگم ولی این اصن خوب نیس به خصوص در حرفه ای مثل برنامه نویسی .. وقتی به کسی یه چیزو میگی برا خودت تکرار میشه و خودت مسلطتر میشی ولی بغضیا هنوز اینو درک نکردن ... خب بگم که تعدادشون کمه و امیداورم زیاد نشن :) بازم میگم عالی بود و در خصوص گیت .. من که تازه شروع کردم و مبتدیم نیازی به استفاده ازش رو ندارم ایا باید حتما استفاده کنم ؟ چون موکولش کردم به یه مدت دیگه که وارد یه تیم شدم :) و اینکه میتونم این تاپیکرو برای دوستام که در این انجمن نیستن شر کنم ؟ اگر اجازه زو بدین من دست به کار شم :) خیلی ممنون (7 سال پیش)
+3 0
همه نکاتی که بیان شده مفید هستن ممنون بابت ترجمه و انتشار (7 سال پیش)
+2 0
الان که دارم این مطلب رو می خونم صبح هستش، انرژیم چندبرابر شد برای کار.واقعا عالی و جذاب بود.تشکر بابت زحمتتون (7 سال پیش)
+2 0
تیتر شماره ۱ کاملا با نظر استاد آقاجانی مخالفه! (7 سال پیش)
+2 0
سلام و ممنون از این تایپیک فوق العاده ای که گذاشتی. اهمیت این موضوعات خیلی مهم و حیاتی هستن اونم برای ما برنامه نویسان که بخوایم در این حوزه رشد کنیم و روز به روز به دانشمون اضافه کنیم و از ابزارهای جدید و نو و همچنین مطمئن استفاده کنیم. در مورد گیت هم بگم که یه ابزار بسیار مهم و حیاتی هست که من خودم چند روزی هست دارم برای یادگیریش و استفاده از اون کار میکنم. اینکه حتما باید جز گروهی باشیم تا از گیت استفاده کنیم فکر میکنم دیدگاه اشتباهی باشه چون اهمیتش فقط برای به اشتراک گذاشتن کدهامون نیست و از همه مهمتر نگهداری و دسترسی به موقع در هر جایی که هستیم مهمترین قابلیت گیت هست البته تا جایی که من متوجه شدم . پس حتما یادش بگیریم و ازش استفاده کنیم. موردی که بیشتر مواقع در کنار کار سنگین و مشکلات من رو هم دلسرد میکنه این هست که دوستان عزیز خیلی راغب نیستن از این امکان سایت استفاده کنن و به همدیگه کمک کنن و تعداد دوستانی که بیشتر به مشکل میخورن و مشکلشون رو مطرح میکنن بیشتر از دوستان وارد و حرفه ای هست که میتونن راهنمایی خوبی کنن. البته خب درست نیست از پیش قضاوت کرد ولی بیایم اهمیت بیشتری به انجمن بدیم و به همدیگه کمک کنیم تا روز به روز رشد کنیم. ممنون از همه دوستان امیدوارم همیشه سلامت و خواستار پیشرفت و تلاش همیشگی باشین. (7 سال پیش)
+3 0
بازنشر مطالب خیلی خوبه ولی کاش لینک مطلب اصلی رو هم قرار میدادید (فکر کنم حداقل قدردانی در برابر کسی که وقت گذاشته و ترجمه بود میتونست باشه) : لینک لینک لینک (7 سال پیش)
+2 0
@sana ebadi اگه میخواین پروژه خاصی بنویسین حتما از Git استفاده کنین (چه تکی چه با تیم.) در غیر این صورت صرفا واس یادگیری نیازی به استفاده ازش رو ندارین. (7 سال پیش)
+1 0
@QUQU ممنون ! بله منم منظورم همین یادگیری بود و واسم عجیب بود که واقعا باید از گیت استفاده کنم یا ن که شما لطف کرذین و پاسخ دادین . ممنون از شما :) (7 سال پیش)
0 0
عالی بود. ممنون (7 سال پیش)
0 0
بی نظیر بود. واقعا کمک بزرگی بهم کردید با این ترجمه خوبتون. ایشالله همیشه تو کاراتون موفق باشید (6 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
reza  7 سال پیش
+1 0

بسیار بسیار زیبا، واقعا ممنون از شما


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .