در نوار آدرس بنویسید: about:config
Enter بزنید و گزینهی I accept the risk یا مشابه آن را تأیید کنید.
در بخش جستجو این مقدار را بزنید: dom.events.testing.asyncclipboard
مقدارش را روی true بگذارید.
گزینهی زیر را هم جستجو کنید: dom.allow_cut_copy
این یکی را هم true کنید.
روش بعدی
استفاده از دستور ویژه در کنسول
۱. کنسول (Console) را باز کن.
۲. این دستور را تایپ کن و Enter بزن: allow pasting
دقت کن بدون پرانتز و دقیقاً همین عبارت باشد.
۳. بعد از Enter، فایرفاکس پیغام میدهد که paste فعال شد.
از این لحظه به بعد میتوانی آزادانه Ctrl + V بزنی.
ارائه پیشنهادات برای تکمیل کد
تولید کد
بازسازی و بهبود کد
رفع باگ توسط کوپایلت
مستندسازی و توضیحات
Stakeholders (ذینفعان)
این بخش به سوالهایی میپردازد که باید از ذینفعان پرسیده شود:
What do we want to do?
هدف پروژه چیست؟ این سوال به تعیین دقیق نیازها و چشمانداز کسبوکار کمک میکند.
For whom?
مشخص کردن مخاطب هدف (Target Audience) برای شناسایی نیازها و خواستههای کاربران.
Why? Business goal?
دلایل کسبوکاری پشت پروژه چیست؟ چگونه این پروژه به اهداف کلی سازمان کمک میکند؟
Competitors:
تحلیل رقبا برای شناسایی مزیتهای رقابتی و نقاط ضعف آنها.
Metrics:
تعیین شاخصهای کلیدی عملکرد (KPIs) برای سنجش موفقیت پروژه.
Technical limitations:
شناسایی محدودیتهای تکنولوژیک که میتواند روی اجرای پروژه تأثیر بگذارد.
هدف: شفافسازی نیازها و ایجاد همراستایی بین تیمهای مختلف و ذینفعان.
سازماندهی کد
1.گفتن اینکه "بعدا درست می کنم"
2. پا فشاری روی یک راه حل یک خطی
3. بهینه سازی های بیهوده
4. متقاعد کردن خود با این موضوع که استایل دهی خیلی مهم نیست
5.لاپوشانی کردن
6.استفاده از نام هایی که هیچ اطلاعاتی نمی دهند
7. نادیده گرفتن روش های خوب اثبات شده
کارگروهی
8. زود رها کردن طرح ها
9.پافشاری روی طرحی که شانس کمی برای کار دارد
10.همیشه برای خود کار کردن
11.اجتناب از نوشتن کدهای بد
12.سرزنش دیگران
13. به اشتراک نگذاشتن چیز هایی که یادگرفته اید با تیم خود
14. کند بودن در ارائه فییدبک به مدیران/ مشتریان
15.استفاده ی کافی نکردن از گوگل
16.ارزش دادن بیش از حد به استایل
17.داشتن یک پیوست شخصی در کد
نوشتن کد
18.ندانستن نحوه ی بهینه سازی
19.استفاده از ابزارهای غلط برای کار
20. مسلط نبودن روی ابزارها و IDE های خودتان
21. نادیده گرفتن پیام های خطا
22. ابزار های توسعه ی خود را به صورت تخیلی فرض کردن
23. ارزش های هاردکدینگ به جای قابل تنظیم کردن
24.تعویض دائم روش ها
25.copy/past کورکورانه ی کد
26. وقت نگذاشتن روی اینکه چیزها واقعا چگونه کار می کنند
27. اعتماد به نفس بیش از حد روی کد خودتان
28. فکر نکردن درباره ی تعادل بین طراحی، solution یا کتابخانه
29. کمک نگرفتن در زمانی که نیاز دارید
تست و نگهداری
30. نوشتن تست هایی که می دانید درست هستند
31. صرف نظر کردن از تست عملکرد برای موارد ضروری
32. بررسی نکردن این که ساخته ی شما کار می کند یا نه
33. به تاخیر انداختن تغییرات بزرگ یا رها کردن پس از یک تغییر بزرگ
34.منکر شدن کدی که خودتان نوشته اید
35. نادیده گرفتن احتیاجات غیر ضروری
بدترین عادت برنامه نویسی شما چیست؟
اکثر ما به مدرسه و دانشگاه می رویم تا شغل خوبی یافته و زندگی مرفه و آبرومندانه ای داشته باشیم. پیدا کردن شغل همه دردسر ساز و استرس زا بوده و مخصوصا اگر صفر کیلومتر باشید، این مساله می تواند به یک امر بسیار مشکل و نا امید کننده تبدیل شود. اولین شغلی که بعد از فارغ التحصیلی باید پیدا کنید، نقش بسزایی در آینده شما دارد. جمع کثیری از فارغ التحصیلان در یافتن اولین شغل ناتوانند و وضعیت آنها به شکل فلج کننده ای سخت و دردسر زا میگردد.
این مقاله بیشتر به درد فارغ التحصیلان IT و کامپیوتر میخورد. کسانی که دارای دانشی تا حدودی کم عمق در حوزه IT می باشند و حالا قرار است اولین شغل خود را در جایگاه یک برنامه نویس پیدا نمایند. دانستن این 10 آیتم به برنامه نویسان تازه کار در روند شغل یابی کمک به سزایی مینماید.

در دنیای کسب و کار امروز هرکسی به دنبال ارائه ی محصولات و خدمات خود و کسب درآمد از روش های مختلف میباشد.
در این میان کسی که نقش اصلی را در موفقیت یا عدم موفقیت کسب و کارهای مختلف و تولید درآمد ایفا میکند ، مشتری یا خریدار است.
مشتری کیست ؟
از لحاظ تعریف مشتری به کسی گفته میشود که تمایل به معاوضه دارایی خود با دارایی دیگران دارد. این دارایی میتواند کالایی مشخص ، خدماتی خاص و یا موضوعی معنوی باشد.
اما به راستی چگونه میتوان این مشتریان را ترغیب کرد که کالای مارا خریداری کنند و یا از خدمات ما استفاده نمایند؟
شاید از نظر شما میزان تفاوت وبلاگ و وب سایت آنطور که باید مشخص نباشد و معتقد باشید که این 2 گزینه از نظر ظاهری شباهت های زیادی به هم دارند، اما نکته مهم اینجا است که تفاوت های ساختاری مختلفی بین وبلاگ و وب سایت وجود دارد که سبب می شود یک سری وجه تمایز بین این دو فراهم شود. در این مقاله قصد ما این است که تفاوت وبلاگ و وب سایت را از جهات مختلف مورد بررسی قرار دهیم.
ادامه نوشتهSOLID مخفف پنج اصل بسیار مهم در مدیریت وابستگی (Dependency Management) در توسعه ی برنامه های شی گرا می باشد. در واقع هر کدام از حروف کلمه ی SOLID به یکی از این اصول بر می گردد.
یکی از مشکلاتی که طراحی نامناسب برنامه های شی گرا برای برنامه نویسان ایجاد می کند موضوع مدیریت وابستگی در اجزای برنامه می باشد. اگر این وابستگی به درستی مدیریت نشود مشکلاتی شبیه موارد زیر در برنامه ایجاد می شوند
ادامه نوشتهامروزه بهوسیله طراحی وبسایت، امکان ارتباط جامع کسبوکارها با مخاطبین و مشتریان خود فراهم شده است. یک وبسایت مجهز و مناسب میتواند جای خالی کسبوکار مربوط به خود را در دنیای بیانتهای وب و فضای مجازی پر نماید. از سوی دیگر، وجود وبسایتهای فراوان در زمینههای مختلف، باعث شده است که توجه تعداد زیادی از افراد، بهخصوص جوانان، به این حرفه جلب شود. طراحی وبسایت به دلیل ویژگیهایی مانند امکان کار کردن بهصورت غیرحضوری و فردی، امکان کسب درآمد بالا، وجود فرایند جذاب، توسعه و پیشرفت همیشگی و همچنین وجود بازار کسب درآمد مناسب، به یکی از محبوبترین شغلهای دنیا تبدیل شده است. اما اکنونکه این مزایا را دانستیم، چگونه باید شروع به طراحی یک وبسایت کنیم؟ در این مقاله کوتاه، این سؤال را پاسخ خواهیم داد:
.jpg)
برنامهنویسی یکی از شغلهای جذاب دنیاست ولی درعینحال نیازمند تمرکز و صرف انرژی فراوان است. برنامه نویسی به دلیل ویژگیهایی مانند عدم نیاز به حضور فیزیکی در محلی خاص، امکان استفاده مجدد از کدهای قبلاً نوشتهشده و امکان کسب درآمد مناسب جدای از اجرای هر پروژه، جزو شغلهای محبوب تلقی میشود. در این میان، یکی از مشکلاتی که بسیاری از علاقهمندان به برنامهنویسی را درگیر خود کرده است، نداشتن نقشه راه روشن و دقیق در مورد چگونگی شروع به یادگیری برنامهنویسی است. در این مقاله، قصد داریم که تا حد زیادی، ابهاماتی که در زمینه شروع به برنامهنویسی پیش روی شما قرار دارد را برطرف سازیم. با ما همراه باشید.
.jpg)
10 فرمان برنامه نویسان
1. بفهم و متوجه شو که تو اشتباه خواهی کرد: نکته اینست که قبل از اینکه وارد محصولتان شوند باید پیدایشان کنی.
2. تو خود کدت نیستی: بیاد داشته باش که نکته اصلی مرور کدها پیدا کردن مشکلات است.
3. مهم نیست که چقدر "کاراته" میدونی، همیشه یکی بیشتر میدونه: چنین فردی در صورتیکه شما بخواهید چند حرکت جدید به شما میاموزد.
4. بدون مشاوره کدهایتان را بازنویسی نکنید: بین حل مشکلات کدها و بازنویسی کدها مرز مشخصی وجود دارد.
5. راه حل افرادی که کمتر از شما میدانند تحمل، صبر و احترام است: افراد غیر فنی که با برنامه نویسان برخورد دارند فکر میکنند که بهترین نقش اول را در گروه پر از گریه کن دارند.
6. تنها ثابت جهان تغییر است: آغوشتان را باز کنید و لبخند بزنید. به تغییرات در مقررات و یلتفرمها یا ابزارها مثل یک چالش نگاه کنید.
7. تنها مرجع واقعی، دانش است نه موقعیت: دانش قدرت میآورد و قدرت احترام، پس اگر در محیطتان احترام میخواهید دانش بجوئید.
8. برای چیزی که اعتقاد دارید بجنگید ولی شکست را به آرامش بپذیرید: بفهمید که بعضی وقتها ایدههای شما رد میشوند. حتی اگر در آخر حق با شما بود، انتقام نگیرید و نگوئید"من که گفته بودم".
9. "مردی در تاریکی" نباشید: یک شخص کدنویس در یک دفتر تاریک نباشید که فقط برای خرید یک نوشابه ظاهر یشود. بدور از تماس، روشنایی، و بدون کنترل .
10. از کدها نقد کنید نه از کدنویس، و با کدنویس مهربان باشید نه با کدها: تا حد زیادی نظرات سازنده و مثبت برای بهبود کدها ارائه بدهید.

یادگیری برنامه نویسی روش و گام های مختلفی دارد. برای یادگیری برنامه نویسی در ابتدا باید سمت و سوی علایق خود را مشخص سازید و سپس دست به کد زدن شوید.
ادامه نوشتهشکستن عادت های بد دشوار است و حتی سخت تر این است که ندانید کدام کار باعث تحلیل کار شما می شود و اگر بدانید و به آن اهمیت ندهید از همه بدتر است. اما شما درحال خواندن این مقاله هستید، اینطور نیست؟
به عنوان یک برنامه نویس بسیاری از کار های غلط را نه تنها در حوزه ی کدزنی بلکه در کارتیمی نیز دیده ام. خود من هم بسیاری از این کار های اشتباه را انجام داده ام. در این مقاله من 35 مورد از این عادت های برنامه نویسی غلط را در 4 دسته ی: سازماندهی کد، کار گروهی، نوشتن کد و تست و نگهداری، بررسی می کنم.
ادامه نوشته
مردم اغلب فکر می کنند کدزنی یک کار بسیار تخصصی با پیش نیاز های فنی است گاهی حتی باوری وجود دارد که کدزنی را مختص افراد خاصی می دانند. اما خوشبختانه این باور ها کاملا نادرست است و کدزنی می تواند توسط هرکسی انجام شود بنابرای در این مقاله 5 دلیل لزوم یادگیری کدزنی را بررسی خواهیم کرد.
اگر شما عضو Packt Hub باشید احتمالا تا به الان نحوه ی کدزنی را می دانید اما اگر نمی دانید این وظیفه ی ماست که به شما بگوییم چرا باید کدزنی را بیاموزید و حتی اگر شما نحوه ی کدزنی را می دانید به دیگران بگویید که چرا یادگیری کدزنی فوق العاده مهم است.
مردم اغلب فکر می کنند کدزنی یک کار بسیار تخصصی با پیش نیاز های فنی است گاهی حتی باوری وجود دارد که کدزنی را مختص افراد خاصی می دانند. اما خوشبختانه این باور ها کاملا نادرست است و کدزنی می تواند توسط هرکسی انجام شود.
در حالی که برخی قوانین فوق العاده تخصصی وجود دارد که نیاز به سطوح خاصی از جزئیات دانش برنامه نویسی نیاز دارد اما در حقیقت تعداد زیادی از قوانین امروزه در نرم افزار ها به صورت خلاقانه و روش های تحلیلی استفاده می شود که همین موضوع دلیل این است که یادگیری چگونه کد زدن ضروری می باشد.
اجازه دهید به 5 دلیل که چرا باید چگونگی کدزنی را بیاموزیم نگاهی بکنیم.
ادامه نوشته
دامنه نام منحصر بفردی است که برای شناسایی سایت اینترنتی مورد استفاده قرار میگیرد، و از یک یا چند قسمت تشکیل شده است که با نقطه (دات) از هم جدا شدهاند.
تعدادی از این تی ال دیها (top-level domains) یا پسوندهای پراستفاده عبارتاند از:
نوع com : مخفف Commercial به معنای تجاری است که اکثراْ جهت استفاده هایی که به شکلی به اموری مانند خرید و فروش، معرفی محصولات، خدمات و مانند آن مربوط می باشند، اختصاص می یابد، اگرچه امروزه بسیاری از سایتهای همه منظوره نیز از نوع com استفاده میکنند. مثال : www.google.com
نوع net : (مخفف Network) این نوع Domain معمولاْ توسط شبکه هائی مانند شبکه های اطلاع رسانی، شرکتهای اینترنتی و سایر موارد مشابه مورد استفاده قرار می گیرد.
مانند : www.irangate.net
نوع org : (مخفف Non-Profit Organizations) این نوع Domain معمولاْ توسط مؤسسات و سازمانهای غیر انتفاعی که غالباْ فعالیت غیر تجاری (یا حتی تجاری) دارند مورد استفاده قرار می گیرد.
مانند : www.lankarani.org
انواع دو حرفی دامنه نمایانگر دامنه های کشوری و ملی میباشند : مانند ir (ایران)، jp (ژاپن)، de (آلمان), uk (انگلیس ) و .... که در انتهای نام Domain ها قرار می گیرند
مانند www.irib.ir
نوع biz : (مخفف Business). این نوع Domain خــاص سایتهای شغلی - تجارتی به ویژه خدمات مربوط به تجارت الکترونیکی که به زودی ارزشی بیش از پیش در اینترنت خواهد یافت، ایجاد گشته است. .
مانند : www.intersky.biz
نوع info : (مخفف Information). این نوع Domain در سایت هایی مورد استفاده قرار می گیرد که بنحوی با امر اطلاع رسانی در هر موردی، مرتبط می باشند. این اطلاع رسانی می تواند موارد تجاری و غیر تجاری را شامل گردد. سایتهایی که به اموری از قبیل انواع اطلاع رسانی در رشته هایی مانند علوم، معرفی محصولات، معرفی خدمات و ... اختصاص یافته اند، می توانند دارای دامنه ای مانند info. باشند.
مانند : www.webhosting.info
نوع name : این اولین نوع Domain ای است که خاص افراد (اشخاص حقیقی) ایجاد شده است. در حقیقت کلیه افرادی که به هر منظور شخصی می خواهند برای خودشان Website ایجاد کنند میتوانند از این دامنه استفاده کنند،
مانند : www.mohsen.name
نوع ws : این نوع Domain با آنکه مخصوص به دامنه ملی یک کشور است ولی بخاطر مشابهت آن با مخفف کلمه (WebSite) مورد توجه فراوان قرار گرفته است و همانطور که از نامش بر می آید، می تواند هر نوع وب سایتی را در بر گیرد.
مانند : www.softcity.ws
نوع us : این نوع Domain با آنکه مخصوص به دامنه ملی کشور آمریکا است ولی بخاطر مشابهت آن با مخفف کلمه (us) بمعنی (ما) مورد توجه فراوان قرار گرفته است
مانند : www.caib.us
نوع tv : این نوع Domain با آنکه مخصوص به دامنه ملی یک کشور است ولی بخاطر مشابهت آن با مخفف کلمه (Television) مورد توجه شبکه های تلویزیونی و ماهواره ای قرار گرفته است و برای این منظور استفاده میگردد
مانند : www.uctv.tv
سایر انواع Domain : در حقیقت انواع دیگری از Domain ها وجود دارند که هنوز به اندازه Domain های بالا ، مقبولیت نیافته اند. به طور مثال نوع دیگری از Domain به نام museum. وجود دارد که مخصوص موزه ها می باشد. و یا نوع aero که مخصوص سایتهای مرتبط با حمل و نقل هوایی و یا Mil که مربوط به سایتهای نظامی است
مانند : www.navy.mil
دامنه های تحت دامنه IR : برای ثبت با دامنه های زیر باید مجوز یا مدارک رسمی مربوطه به همان نوع فعالیت موجود باشد . مثلا متقاضیان ثبت دامنه co.ir باید دارای شرکت ثبت شده باشند
ac.ir. برای سازمانهای آکادمیک که دارای مجوز از وزارت علوم، تحقیقات و فناوری، وزارت بهداشت، درمان و آموزش پزشکی، شورای نظارت بر حوزه های علمیه، یا شورای عالی انقلاب فرهنگی هستند.
مانند : www.ams.ac.ir
sch.ir. برای مدارس، موسسات و سایر سازمانهای آکادمیک تحت مجوز وزارت آموزش و پرورش جمهوری اسلامی ایران.
مانند : www.tvoccd.sch.ir
net.ir. برای واحدها یا موسساتی که مقررات رسمی آنها دلالت بر ارائه خدمات شبکه دارد، یا در غیر این صورت، قانونا مجاز به ارائه خدمات شبکه هستند.
مانند : www.dpi.net.ir
gov.ir. برای بخشهای اداری و سازمانهای زیرمجموعه قوای مجریه، مقننه و قضاییه جمهوری اسلامی ایران.
مانند : www.ershad.gov.ir
org.ir. برای سازمانهای غیر انتفاعی رسمی و سازمانهای بین المللی که دولت ایران یا یکی از موسسات آن عضو آنهاست.
مانند : www.iid.org.ir
co.ir. برای همه سازمانها و شرکتهای غیر دولتی دیگر.
مانند : www.renault.co.ir
id.ir. برای اشخاص حقیقی که شهروند یا مقیم قانونی جمهوری اسلامی ایران هستند
مانند : www.amir.id.ir
سلام
خیلی از دوستان بارها درمورد انتشار برنامه شون سوال کرده بودند که چطور میتونن
برنامه شون را تحویل مشتری بدن تا با کمترین دردسر روی سیستم نصب بشه و کار کنه.
گفتم اندک تجربه ای که دارم را در اختیارتون بگذارم.
ببینید دوستان اگر میخواید برنامه ای بنویسید که با کمترین خطا کار کنه،
پشتیبانی راحتی داشته باشه و حتی در نصب و راه اندازی آن کمترین مشکل را داشته
باشید باید 3 مورد کلی را در نظر داشته باشین:
1- مستند کردن روال کار تا حد امکان در ابتدا و قبل از کدنویسی
2- نحوه ی کدنویسی و پیکربندی پروژه
تون (مثلا استفاده کردن از اصولی مثل شی گرایی، لایه بندی و ...)
3- ابزارهایی که برای ساخت برنامه تون از آن استفاده میکنید
و اما توضیح این موارد...
ادامه نوشته
مفاهیم اولیه شیء گرایی:
1- Object (شیء): انسان، جسم، اشیاء و هر آنچه که سیستم میخواهد در مورد آن اطلاعاتی داشته باشد.
2- Class (کلاس): مجموعهای از اشیاء که با هم در ارتباطند.
3- Attribute (خصوصیات): مشخصاتی از یک شیء که آن را از یک شیء دیگر مجزا میکند.
4- Relation (ارتباط): میتواند میان اجزای مختلف یک سیستم بوجود آید و دارای انواع مختلفی هستند.
مفاهیم شیء گرایی:
1- Abstraction تجرید (مجرد سازی): اولین مفهوم شیء گرایی است و به این معنا میباشد که هر آنچه در غالب یک شیء یا عملیات بیان میشود، به تنهایی دقیق و کامل است.
2- Encapsulation کپسوله سازی (بسته بندی): بدین معناست که دستورات و بخشهای مختلف یک برنامه از دید کاربر پنهان میگردد. با کپسوله سازی، دخل و تصرف در برنامهها کاهش مییابد و ما را از پرداختن به ريز موضوعات رها میكند. مثال: جمع آوری کلاسها در یک فایل DLL.
3- Inheritance وراثت (ارث بری): وراثت اجازه میدهد تا مفاهیم جدید بر اساس مفاهیم موجود تولید گردد. بزرگترین مزیت آن جلوگیری از تکرار است. مثال: دانشجو، استاد و کارمند همگی نمونهای از انسان هستند، بنابر این میتوانند خصوصیات انسان را به ارث ببرند.
4- Polymorphism چند ریختی (چند شکلی بودن): بیان چند عمل یا چند ریخت مختلف از یک شیء به یک زبان است. مثال: رسم شکل، میتواند شامل رسم مربع، رسم مستطیل و رسم مثلث باشد. این عملیات را میتوان به صورت چند ریختی بیان کرد، یعنی با تعداد و نوع پارامترها و تغییر آنها رسم یکی از اشکال را اجرا کرد.
5- Interface(اینترفیس (رابط کاربری): اينترفيس در برنامه نويسي همانند همان كلاس است تنها با اين تفاوت كه هيچكدام از اعضاي آن پياده سازي نمیشوند. در واقع يك اينترفيس گروهي از متدها، خصوصيات، رويدادها و Indexer ها هستند كه در كنار هم جمع شدهاند. اينترفيسها را نميتوانInstantiate (نمونه سازي) كرد. تنها چيزي كه يك اينترفيس دارا ميباشد امضاي (signature) تمامي اعضاي آن ميباشد. به این معنی كه ورودي و خروجي متدها، نوع Property ها و... در آن تعريف ميشوند ولي چيزي پياده سازي نميشود. اينترفيسها سازنده و فيلد ندارند (امري است بديهي!) اما چرا؟. يك اينترفيس نميتواند Operator Overload داشته باشد و دليل آن اين است كه در صورت وجود اين ويژگي، احتمال بروز مشكلاتي از قبيل ناسازگاري با ديگر زبانهاي Net. و VB.Net كه از اين قابليت پشتيباني نميكنند وجود داشته باشد. نحوه تعريف اينترفيس بسيار شبيه تعريف كلاس است تنها با اين تفاوت كه در اينترفيس پياده سازي وجود ندارد.