<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های digipatra</title><link>https://virgool.ir/feed/@digipatra</link><description>تیم دیجی پاترا متخصص در زمینه سخت افزار و نرم افزار تیمی مجرب در زمینه مارکتینگ اینترنتی، برنامه نویسی تحت وب،اندروید،سایت و....</description><language>fa</language><pubDate>2026-11-11 22:04:52</pubDate><image><url>https://files.virgool.ir/upload/users/50440/avatar/VpmwZm.png</url><title>digipatra</title><link>https://virgool.ir/@digipatra</link></image><item><title>اموزش حلقه while در C++</title><link>https://virgool.ir/@digipatra/اموزش-حلقه-while-در-c-jqhkim4ldmth</link><description>اموزش حلقه while در C++در برخی از مثال های برنامه نویسی لازم است که عملیات مشخصی چندین بار تکرار شوند این عملیات را حلقه while در c++ میگویند.حلقه ی تکرار ساختاری است که مجموعه ای از دستورات را تا مادامی که شرط خاصی برقرار باشد تکرار می کند.حلقه ی تکرار به دو صورت استفاده میشود. در حالت اولشرط تکرار در ابتدای حلقه مورد بررسی قرار میگیرد و درصورت درست بودن آن شرطدستورات داخل حلقه while انجام میشوند.اما در حالت دوم ابتدا دستورات حلقه انجام میشوند و در آخر شرط حلقه مورد بررسی قرار میگیرد.زبان برنامه نویسی C++ چندین نوع حلقه دارد که در اینجا حلقه ی while را بررسی خواهیم کرد.حلقه while مانند حلقه for است اما شمارنده ندارد و فقط شرط ورود به حلقه را دارد.در حلقه ی while تا مادامی که شرط خاصی برقرار است عملیات داخل حلقه تکرار میگردند.در این دستور شرط در ابتدای حلقه بررسی میشود.تا وقتی که شرط درست است دستورات بدنه while اجرا میگردد.شکل کلی حلقه ی while به صورت زیر است :while(شرط ورود به حلقه)&#xA;{&#xA;دستورات بدنه&#xA;}مثال:برنامه ای بنویسید که یک عدد را دریافت کند و چاپ کند که این عدد چند رقمی است.void main()&#xA;{&#xA;int n, a=0;&#xA;cin&gt;&gt;n;&#xA;while( n&gt;0)&#xA;{&#xA;n= n/10;&#xA;a++;&#xA;}&#xA;cout&lt;&lt;a;&#xA;}نکته: در مثال حلقه while در c++ بالا شرط ورود و ادامه حلقه بزرگتر بود n  از صفر است.مثال:برنامه ای بنویسید که تعداد نامشخصی عدد را با هم جمع میکند.اعداد تا وقتیاز ورودی باید دریافت شوند که کاربر عدد صفر را وارد کند.void main()&#xA;{&#xA;int s=0 , a;&#xA;cin&gt;&gt;a;&#xA;while( a!=0)&#xA;{&#xA;s=s+a;&#xA;cin&gt;&gt;a;&#xA;}&#xA;cout&lt;&lt;s;&#xA;}نکته: همانطور که در مثال بالا میبینید شرط ورود به حلقه while برای دریافت مقدار مخالف بودن a با عدد صفر است.مثال:برنامه ای بنویسید که یک عدد را دریافت و حاصل جمع ارقامش را محاسبه و چاپ کند.void main()&#xA;{&#xA;int x , s=0,i;&#xA;cin&gt;&gt;x;&#xA;while(x&lt;10)&#xA;{&#xA;i= x %10;&#xA;x=x /10;&#xA;s=i+s;&#xA;}&#xA;s=x+s;&#xA;cout&lt;&lt;s;&#xA;}مثال: ( سورس معکوس عدد در c++ )برنامه ای بنویسید که یک عدد را بگیرد و معکوس عدد آن را چاپ کند.برای نمونه:21498 =&gt;&gt; 89412void main()&#xA;{&#xA;int x, s=0,i;&#xA;cin&gt;&gt;x;&#xA;while(x&lt;10)&#xA;{&#xA;i= x %10;&#xA;x=x /10;&#xA;s=(i+s)*10;&#xA;}&#xA;s=x+s;&#xA;cout&lt;&lt; s;&#xA;}</description><category>digipatra</category><author>digipatra</author><pubDate>Thu, 02 Apr 2020 23:41:52 +0430</pubDate></item><item><title>اموزش نحوه کار با ارایه ها در C++</title><link>https://virgool.ir/@digipatra/اموزش-نحوه-کار-با-ارایه-ها-در-c-iunftx6mlxla</link><description>اموزش نحوه کار با ارایه ها در C++آرایه هازمانی که بخواهیم تعدادی متغیر را به صورت دسته بندی شده ذخیره کنیم از آرایه استفاده میکنیم.گاهی نیز تعداد داده های یک برنامه آنقدر زیاد است که نمیتوانیم برای هر کدام از آنها یک متغیر جداگانه تعریف کنیم بنابراین از یک آرایه با تعداد عناصر زیاد استفاده میکنیم. ? آرایه های یک بعدی:آرایـه دارایی تعدادی عنصر پشت سر هم است که برای دستیابی به هر کدام از این عناصر از اندیس استفاده میکنیم. اندیس آرایـه در C++ از صفر شروع میشود. برای استفاده از آرایـه ها ابتدا باید آرایـه مورد نظر را در حافظه تعریف کنیم. در مثال زیر آرایه ای با 6 عنصر تعریف کرده ایم:int Array[6];همانطور که مشخص است، این آرایـه که نام آن را Array گذاشته ایم از نوع int است یعنی میتواند 6 عنصر از نوع int را در خود ذخیره کند.اما برای دسترسی به عناصر این آرایـه باید از اندیس آن عنصر مورد نظر استفاده کنیم.عنصر اول : Array[0]                                 عنصر دوم : Array[1]                     عنصر سوم : Array[2]عنصر چهارم : Array[3]                              عنصر پنجم: Array[4]                    عنصر ششم : Array [5]مقداردهی به آرایه:برای مقدار دادن به یک آرایـه میتوانیم به صورت یکجا به تمامی عناصر آن مقدار دهی کنیم یا به صورت تک تک:int Array[6] = {1, 5, -3, 10, 22, 4}یاArray[0] = 1;Array[1] = 5;Array[2] = -3;مثال: برنامه ای بنویسید که 6 عدد را از کاربر دریافت نماید و حاصل جمع آنها را در خروجی نمایش دهد:#include &lt;iostream.h&gt;&#xA;int main()&#xA;{&#xA;    int num[6];&#xA;    int sum = 0;&#xA;&#xA;    for(int i = 0 ; i &lt; 6 ; i++)&#xA;    {&#xA;        cout &lt;&lt; &#34;Enter number &#34; i+1 &#34; :&#34;&#xA;        cin &gt;&gt; num[i];&#xA;        sum += num[i];&#xA;    }&#xA;    cout &lt;&lt; &#34;\n Sum of numbers is &#34; &lt;&lt; sum;&#xA;    return 0;&#xA;}خروجی:Enter number 1 : 1Enter number 2 : 7Enter number 3 : 9Enter number 4 : 0Enter number 5 : 18Enter number 6 : 1Sum of numbers is 36در مثال بالا آرایـه ای بنام num با طول 6 تعریف شده که از یک حلقه تکرار for برای مقدار دادن به عناصر آن استفاده می کنیم و در درون حلقه، مقدار هر عنصر از آرایه را با متغیر sum که دارای مقدار اولیه صفر است جمع می کنیم. دقت کنید که حلقه for باید حتما از صفر شروع شود چون اندیس اولین عنصر آرایه صفر است. در نهایت و با خروج از حلقه حاصلجمع عناصر آرایه که در متغیر sum ریخته شده است را چاپ می کنیم .آرایه چند بعدی:در آرایـه های تک بعدی، فقط یک سطر داشتیم و تعدادی ستون، اما در آرایـه های چند بعدی تعدادی سطر و تعدادی ستون داریم، درست همانند یک ماتریس.تعریف کردن یک آرایه با 3 سطر و 2 ستون:Char x[3][2];زمانی که آرایـه ای از نوع Char تعریف میشود، هر عنصر میتواند یک کاراکتر (حرف) را در خود ذخیره کند. بنابراین اگر بخواهیم برای مثال یک نام را در برنامه خود ذخیره کنیم میتوانیم تک تک حروف آن را در یک آرایـه ذخیره کنیم بنابراین آن آرایـه یک نام را در خود ذخیره کرده است.مقداردهی به آرایه چند بعدی:char x[3][4] = {{‘t’, ‘b’, ‘p’, ‘z’},     // Row 1                       {‘m’, ‘c’, ‘c’, ‘q’},   // Row 2                       {‘a’, ‘z’, ‘d’, ‘g’}};  // Row 3یاx[0][0] = t;x[1][3] = q;x[2][1] = z;x[2][0] = a;x[2][3] = g;توجه داشته باشید که برای مقدار دهی آرایه های یک بعدی، از یک حلقه استفاده میکردیم، اما در آرایـه دو بعدی برای دسترسی مقادیر توسط حلقه، از دو حلقه تو در تو استفاده میکنیم. حلقه بیرونی برای سطرها و حلقه داخلی برای ستون ها.مثال: برنامه ای بنویسید که یک آرایـه 4×4 تعریف کند و آن را با اعدادی که از کاربر میگیرد پر کند سپس جمع عناصر قطر اصلی را محاسبه و در خروجی نمایش دهد.int main()&#xA;{&#xA;    // تعریف آرایـه&#xA;    int A[4][4];&#xA;&#xA;    // دریافت اعداد از کاربر&#xA;    for (int i = 0; i &lt; 4; i++)&#xA;        for (int j = 0; j &lt; 4; j++)&#xA;            cin &gt;&gt; A[i][j];&#xA;&#xA;    //جمع عناصر قطر اصلی&#xA;    int sum = 0;&#xA;    for (int i = 0; i &lt; 4; i++)&#xA;        for (int j = 0; j &lt; 4; j++)&#xA;            if (i == j) // شرط قطر اصلی بودن عنصر&#xA;                sum += A[i][j];&#xA;&#xA;    //نمایش مجموع در خروجی&#xA;    cout &lt;&lt; sum;&#xA;&#xA;    return 0;&#xA;} ? </description><category>digipatra</category><author>digipatra</author><pubDate>Thu, 02 Apr 2020 16:19:54 +0430</pubDate></item><item><title>دستورات (توابع) ورودی و خروجی در ++C</title><link>https://virgool.ir/@digipatra/دستورات-توابع-ورودی-و-خروجی-در-c-z2xl9bj27esv</link><description>دستورات (توابع) ورودی و خروجی در ++Cهدف از ساخت کامپیوتر و ایجاد برنامه نویسی دادن اطلاعات به ماشین و دریافت جواب بوده که به این روال، جریان ورودی خروجی گفته میشود . برای استفاده از این جریانات ما حداقل به 2 فایل کتابخانه ای در C++ نیاز داریم و دستوراتی برای استفاده از این کتابخانه ها که با ارائه یک مثال، استفاده از این دستورات را نشان می دهم .#include &lt;iostream.h&gt;&#xA;#include &lt;conio.h&gt;&#xA;int main()&#xA;{&#xA;    int a;            //a=?&#xA;    cin &gt;&gt; a;         //a=value of user input&#xA;    cout &lt;&lt; &#34;a:&#34;     //Prints a: on screen&#xA;    cout &lt;&lt; a;        //Prints value of a&#xA;    getch();    &#xA;    return 0;&#xA;}a:120برای استفاده از کلمات کلیدی cin و cout لازمه که از کتابخانه iostream.h در برنامه خود استفاده کنیم.دستور cout باعث چاپ اطلاعات در مانیتور می شود به این صورت که اگر بعد از این دستور، عبارت مورد نظر رو تو &#34; &#34; قرار بدیم عینا همون عبارت تو مانیتور نشان داده می شود و معمولا جایی که کاربر قصد نشان دادن عین یک عبارت را در خروجی دارد مورد استفاده قرار می کیرد و اگه بخواهیم مقدار یک متغیر یا ثابتی را نمایش بدهیم باید نام را نوشته و از &#34; &#34; استفاده نکنیم .دستور cin باعث می شود که از کاربر یا برنامه دیگه ای یک مقدار یا متنی را بگیریم . در واقع کامپایلر با رسیدن به این دستور منتظر ورود اطلاعات از طرف کاربر شده تا زمانی که کاربر Enter را فشار بده و مقدار ورودی کاربر را در متغیری که در جلوش اعلان شده بریزه و همونطور که قبلا اشاره شد موجب مقدار دهی به متغیر مربوطه میشود .در برنامه بالا تابعی بنام getch() هست که برای استفاده از اون باید از کتابخانه conio.h استفاده کنیم که باعث میشود بعد از اجرای برنامه و رسیدن کامپایلر به این خط، برنامه متوقف شده و منتظر این باشه که کاربر یک کلید از کیبورد را فشار دهد . با این دستور می توانیم خروجی برنامه را ببینیم چون اگر این تابع نباشد در کسری از ثانیه برنامه اجرا و بلافاصله بسته میشود و دیگر ما قادر به دیدن خروجی نخواهیم بود . ( امتحان کنید! )در مثال بالا فرض بر اینه که کاربر مقدار 120 را وارد کرده است.گاهی اوقات لازمه که ما چند مقدار را با استفاده از دستور cin به برنامه بدهیم، در اینصورت به ازاء هر مقدار از یک &lt;&lt; استفاده می کنیم و همینطور برای دستور cout ازیک &gt;&gt; .int a, b;            //a=?, b=?&#xA;cin &gt;&gt; a &gt;&gt; b;&#xA;cout &lt;&lt; a &lt;&lt; b;همونطور که در برنامه های قبلی دیدیم با نوشتن چند دستور چاپ، تمامی اطلاعات در یک خط نوشته شد . در خروجی برای اینکه از خط کنونی به خط بعدی برویم به یکی از صورتهای زیر عمل می کنیم :cout &lt;&lt; a &lt;&lt; endl;عبارت endl به کامپایلر پایان خط جاری را نشان می دهد و در صورت وجود خروجی دیگه ای در برنامه، نمایش خروجی را از خط بعدی ادامه میدهد .cout &lt;&lt; a &lt;&lt; &#34;\n&#34;عبارت \n نیز مثل endl خروجی را به خط بعدی هدایت می کند .#include &lt;iostream.h&gt;&#xA;#include &lt;conio.h&gt;&#xA;int main()&#xA;{&#xA;    int a, b;                                    //a=?,b=?&#xA;    cout &lt;&lt; &#34;Please inter value of a:&#34;&#xA;    cin &gt;&gt; a;                                    //a=value of user input&#xA;    cout &lt;&lt; &#34;Please inter value of b:&#34;&#xA;    cin &gt;&gt; b;                                    //b=value of user input&#xA;    cout &lt;&lt; &#34;a:&#34; &lt;&lt; a &lt;&lt; &#34;\n&#34;                   //Prints a:(value of a) on screen and go to next line&#xA;    cout &lt;&lt; &#34;b:&#34; &lt;&lt; b;                           //Prints b:(value of a) on screen&#xA;    return 0;&#xA;}Please inter value of a:&#xA;Please inter value of b:&#xA;a:120&#xA;b:87باید بگم فرض بر این است که مقادیر 120 و 87 توسط کاربر وارد شده است . نکته ای که اینجا قابل توجه است اینه که دستور cin خودش باعث میشود که کامپایلر با گرفتن مقدار بطور خودکار به خط بعدی برود و دیگه اینجا نیازی به قید \n یا endl نیست .</description><category>digipatra</category><author>digipatra</author><pubDate>Thu, 02 Apr 2020 16:04:56 +0430</pubDate></item><item><title>بهترین محیط های برنامه نویسی (IDE) برای برنامه نویسی اندروید</title><link>https://virgool.ir/@digipatra/بهترین-محیط-های-برنامه-نویسی-ide-برای-برنامه-نویسی-اندروید-nuvtju4y5pbr</link><description>1.اندروید استودیو Android Studioاندروید استودیو (به انگلیسی: Android Studio) یک محیط برنامه‌نویسی برای پلتفرم اندروید است. این برنامه در ۱۶ مه ۲۰۱۳ توسط گوگل در کنفرانس گوگل آی/او معرفی شد. از ماه ژوئن ۲۰۱۳ نگارش پیش‌نمایش این برنامه (به‌صورت رایگان) برای آزمایش در دسترس توسعه‌دهندگان قرار گرفت. محیط برنامه‌نویسی اندروید استودیو، بر اساس نرم‌افزار جت‌برینز طراحی شده‌است. این نرم‌افزار به‌طور اختصاصی برای اندروید ساخته شده‌است. هم‌اکنون اندروید استودیو برای دریافت بر روی ویندوز، مک و لینوکس در دسترس می‌باشد. https://virgool.io/d/nuvtju4y5pbr/%F0%9F%93%B7 در این نرم‌افزار چندین ویژگی تازه برای کاربران می‌باشد:چیدمان زنده: ویرایشگر WYSIWYG – کدنویسی زنده – رندر هم‌زمان برنامهکنسول توسعه‌دهنده: راهنمای بهینه‌سازی – کمک برای ترجمه – ردیابی ارجاع – شیوۀ استفادهارائه نگارش آزمایشی و اجرای صحنهپشتیبانی از ساخت مبتنی بر گریدلرفع و عیب‌یابی مخصوص اندرویدابزار لینت برای گرفتن کارکرد، توانایی استفاده، نگارش سازگار با مشکلات دیگرقابلیت سپر پیشرفته (پروگارد) و امضای برنامهمبتنی بر الگوی wizard برای ایجاد طرح اندروید و اجزای مشترکویرایشگر طرح بندی غنی که به شما اجازۀ کشیدن و رها کردن را می‌دهند. گزینه‌ای برای تنظیمات پیش‌نمایش طرح‌بندی در صفحه نمایش چندگانه2. اکلیپس Eclipseاکلیپس (به انگلیسی: Eclipse) یک محیط توسعه نرم‌افزاری چندزبانه برای محیط توسعه مجتمع با قابلیت اضافه کردن افزونه می‌باشد. این محیط توسعه در ابتدا با زبان جاوا و برای توسعه برنامه‌های این زبان استفاده می‌شد. در ادامه با افزوده شدن افزونه‌هایی به آن امکان توسعه زبان‌هایی چون سی، سی++، روبی، کوبول، پایتون، پرل، پی اچ پی، لاتک و اندروید را فراهم می‌کند.معماریسامانهٔ زمان اجرای اکلیپس مبتنی بر اکویناکس که پیاده‌سازی استانداردی، سازگار با او اس جی ای است، می‌باشد. اکلیپس از افزونه هارا برای فراهم آوردن امکان استفاده از تمام قابلیت‌هایش بر روی سامانه اجرا، استفاده می‌نماید که برخلاف با بعضی از برنامه‌هایی که به صورت معمول با قابیلت کد سخت می‌باشند، است.سازوکار افزونه‌های در اکلیپس صورتی سبک‌تر از چهارچوب مهندسی نرم‌افزار بر اساس مولفه است. به علاوه برای اینکه اکلیپس قابل گسترش برای توسعه سایر زبان‌های برنامه‌نویسی مانند سی و پایتون باشد، چهارچوب افزونه‌ها به اکلیپس امکان کار با زبان‌های حروفچینی مانند لاتک و برنامه‌های شبکه‌ای مانند تلنت و سامانه مدیرت پایگاه داده را فراهم می‌آورد. جاوا و پشتیبانی از سی وی اس در کیت توسعه نرم‌افزاری اکلیپس فراهم شده‌است.به جز بخش کوچکی از هسته زمان اجرا، تمام بخش‌های در اکلیپس به صورت افزونه‌ای است. این بدان معناست تمام افزونه‌ها در اکلیپس به شکل دقیقاً یکسانی توسعه می‌یابند و تمام خصوصیات آنها با هم برابر هستند. اکلیپس برای بخش عظیمی از خصوصیات افزونه‌هایی را فراهم می‌نماید، که بعضی از آنها از طرف شخص ثالت توسعه به شکل رایگان یا تجاری توسعه می‌یابند. نمونه‌ای از این افزونه‌ها، افزونه یو ام‌ال برای نمودار ترتیبی و سایر دیاگرام‌های یو ام‌ال است، یا افزونه‌ای برای کاوش در پایگاه داده.سکوی غنی مشتریاکلیپس، سکوی غنی مشتری اکلیپس را برای توسعه برنامه‌های همه منظوره را فراهم می‌آورد. اجزا زیر این بستر را فراهم می‌آورد:اکویناکس - یک چهارجوب بسته‌بندی استانداردهسته سکو - بوت اکلیپس، اجرای افزونه‌هاجی فیس - کلاسهای نمایشگر برای انقال حالت از مدل کنترل نمایشگر به اس دبلیو تی، بافر فایلها، ویرایشگر متنمیزکار اکلیپس(Eclipse Workbench)- نمایش‌ها، ویرایشگرها، چشم‌اندازها.تاریخچهاکلیپس به عنوان پروژه‌ای در شرکت ای بی ام شعبه کانادا ایجاد گردید که برای جایگزینی محیطهای توسعه خانوادهٔ ویژوال ایج بود&lt;. ویژوال ایج مبتنی بر اسمال تاک بود در حالی که اکلیپس توسط او تی ای بر مبنای جاوا توسعه یافت. در نوامبر سال ۲۰۰۱، کنسرسیومی برای توسعه اکلیپس به عنوان یک نرم‌افزار متن باز ایجاد شد و در سال ۲۰۰۴، بنیاد اکلیپس تأسیس گردید.نگارش سوم اکلیپس(منتشر شده در ۲۱ ژوئن سال ۲۰۰۴) سکوی خدماتی او اس جی ای را به عنوان معماری زمان اجرای خود برگزید. اکلیپس در ابندا تحت مجوز متداول عمومی و بعداً تحت مجوز عمومی اکلیپس منتشر شد. نرم‌افزار آزاد و متن‌باز بعدها اعلام نمود که هر دو مجوز از نوع نرم‌افزار آزاد هستند، ولی با اجازه‌نامه عمومی همگانی گنو کاملاً مطابق نیستند.براساس گفته لی نکمن، مدیر ارشد فناوری شرکت ای بی ام بخش رشنال در آن زمان، که بعدها رئیس بخش توسعه و پشتیبانی این بخش شد، انتخاب نام اکلیپس، برای مقابله با ویژوال استودیو متعلق به شرکت مایکروسافت بود و نه شرکت سان میکروسیستم جالب آنکه وی اکنون کارمند شرکت مایکروسافت است.3.ویژوال استودیو زامارین (xamarin)Xamarin Visual Studio نام یک محیط جدید و فوق العاده پیشرفته به منظور توسعه اپلیکیشن های iOS ، اندروید و ویندوز در ویژوال استودیو است. اکنون می توانید در محیط ویژوال استودیو ، در میان API های اندروید و iOS کاوش کنید و از تمامی امکانات قدرتمندی که در اختیار برنامه نویسان این سیستم عامل ها قرار گرفته است ، در ویژوال استودیو نیز استفاده کنید. IntelliSense گنجانده شده در Visual Studio ، شما را قادر می سازد برنامه نویسی حرفه ای اندروید و iOS را در محیطی بسیار قدرتمند و حرفه ای انجام دهید. به کمک زامارین ویژوال استودیو ، محدودیت برنامه نویسی اپلیکیشن های iOS در مک را از بین ببرید و به راحتی در محیط ویندوز اقدام به توسعه اپلیکیشن های iOS کنید. Xamarin Visual Studio در برنامه نویسی اپلیکیشن های iOS ، بسیار بسیار حرفه ای تر از XCode عمل می کند ، بر خلاف Interface Builder در XCode ، نرم افزار Xamarin iOS Designer امکانات فوق العاده گسترده تری را در رندر سازی نماها در اختیار شما قرار می دهد.توسط زامارین ویژوال استودیو ، حتی به یک خط کدنویسی XML هم نیاز ندارید ! شما به سادگی می توانید اسکرین های اندروید را با Drag&amp;Drop اپ بیلدر ایجاد کنید. حقیقت این است که برنامه نویسی اندروید کار آسانی نیست ؛ اما Xamarin Android Designer همه چیز را در این زمینه ساده سازی می کند ؛ شما می توانید نتیجه کارهای خود را در رزولیشن های گوناگون گوشی های اندرویدی مشاهده کنید. زارامین ویژوال استودیو ، مناسب ترین روش برای دیباگ و تست اپلیکیشن های توسعه داده شده اندروید و iOS را در اختیارتان قرار می دهد ؛ بنابراین به کمک Xamarin Visual Studio ، لذتی بی سابقه را در توسعه اپلیکیشن های مدرن اندروید و iOS تجربه کنیدویژگی های نرم افزار Xamarin Visual Studio Enterprise :– ساخت اپلیکیشن های موبایل در زبان سی شارپ– ساخت اپلیکیشن های iOS در ویندوز– عملکرد دقیق تر از Xcode– ساخت اپلیکیشن های اندروید بدون نیاز به کدنویسی XML– ویرایش حرفه ای شاخصه های اپلیکیشن های اندروید و iOS– دسترسی کامل به API های اندروید و iOS در ویندوز</description><category>digipatra</category><author>digipatra</author><pubDate>Thu, 02 Apr 2020 12:04:58 +0430</pubDate></item><item><title>بهترین زبان ها برای شروع برنامه نویسی</title><link>https://virgool.ir/@digipatra/بهترین-زبان-ها-برای-شروع-برنامه-نویسی-pomxkmfeh2gp</link><description>بهترین زبان ها برای شروع برنامه نویسی1.زبان ++C و Cزبان برنامه‌نویسی سي  C  چيست؟زبان برنامه‌نویسی سی (C programming language) به سخت افزار یا سیستم عامل خاصی وابسته نیست . این زبان خصوصیات و اجزا زبان های برنامه نویسی پیشرفته را همراه با کارآیی بالای زبان اسمبلی در بردارد و گاهی آن را یک زبان نیمه پیشرفته می دانند .سي C به گونه ای است که تطبیق نرم افزار از یک نوع کامپیوتر به نوع دیگر را آسان می کند. امروزه برنامه ریزی ریزکنترل ها و انواع سی‌پی‌یوها و همچنین تولید سیستم عامل های جدید و نرم افزارهای کاربردی از طریق زبان C صورت می گیرد.تاریخچه زبان سي  Cزبان C در سال 1972 توسط دنیس ریچی در آزمایشگاه های Bell ساخته شد (بعدها این آزمایشگاه ها به AT&amp;T Labs تبدیل شد) . سیستم عامل Unix هم قبلا در همان Bell Labs توسط زبان B نوشته شده بود.C که از زبان B حاصل شده است، به منظور پیاده سازی سیستم عامل Unix روی یک کامپیوتر PDP-11 ارائه شد. Ritchie زبان B را گسترش داد و یک سری امکانات از جمله نوع دار کردن داده ها را به آن اضافه نمود و زبان حاصل را C نامید.البته زبان B که توسط Ken Thompson در سال 1970 ساخته شده بود نیز از زبان BCPL حاصل شده که آن را Martin Ritchard ارائه داده بود. پس از آن که Ritchie و همکارش Kernighan در سال 1978 کتابی جهت آشنایی عموم با این زبان منتشر نمودند، توجه گسترده ی برنامه نویسان به آن جلب شد. به گونه ای که نسخه های مختلفی از آن روی کامپیوترهای مختلف به وجود آمد. همین امر موجب شد در سال 1983 انستیتوی استانداردهای ملی آمریکا (ANSI) کمیته ای برای استاندارد کردن این زبان تشکیل دهد. بالاخره در سال 1989 استاندارد آن تثبیت شد.ویژگی‌های زبان برنامه نويسي C- تاثير گذارترين زبان برنامه نويسي در دنیای كامپيوتر است.- یک زبان برنامه نویسی سطح میانی است.- یک زبان ساخت یافته‌ و قابل حمل است.- دارای سرعت، قدرت و انعطاف پذیری بالایی است و هیچ محدودیتی را برای برنامه نویس به وجود نمی آورد.- زبان برنامه نویسی سیستم است.- زبان کوچکی است و تعداد کلمات کلیدی آن انگشت شمار است.- نسبت به حروف حساس است و تمام کلمات کلیدی این زبان با حروف کوچک نوشته می‌شوند.- در محیط‌های توسعه دهنده مجتمع (Integrated Development Envoirements) صورت می‌گیرد.C ، یک زبان نسبتاً سطح پایین به‌شمار می‌آید، این یک توصیف تحقیرآمیز نبوده، و صرفاً به این معنی است که C با همین نوع از اشیائی سروکار دارد که بیشتر کامپیوترها با آن سروکار دارند، نظیر کارکترها، اعداد و آدرس‌ها. این اشیا را می‌توان با هم ترکیب کرد و می‌توان روی آنها همان عملیات محاسباتی و منطقی را انجام داد که توسط یک کامپیوتر حقیقی پیاده سازی کرد.سیستم‌عامل سیمبیان (symbian) با زبان C نوشته شده و بهمین دلیل این زبان به‌عنوان زبان اولیه برای برنامه نویسی در آن انتخاب شده‌است.C بیشترین امکان دسترسی به APIهای سیستم‌عامل سیمبیان را فراهم می‌کند و بهترین کارکرد در حافظه و سرعت اجرا را داراست. برای مثال این زبان قدرتمند را می‌توان در زمینه‌های زیر بکار گرفت:- برنامه‌هایی که مانند سرور عمل می‌کنند. برای نمونه برنامه‌هایی که در پشت صحنه کار می‌کنند و یکی از بخش‌های سیستم- به عنوان مثال درگاه‌های COM – را مدیریت می‌کنند.- PLUG inها که محیطی را بر پایه سیستم‌عامل ایجاد می‌کنند. بطور مثال برنامه‌ای که فایل‌های html را به فایل‌های word سیمبیان تبدیل می‌کند از کتابخانه مبدل سیستم‌عامل استفاده می‌کند.- درایورهای دستگاه که با Kernel کار متعامل می‌کنند و…استفاده از زبان C در سیستم‌ عامل سیمبیان بر روی مناسب بودن کارکرد گوشی‌ها متمرکز شده‌است، که بدین معناست که چند تا از عملگرهای استاندارد زبان C مانند مدیریت استثناها قابل استفاده در برنامه نویسی سیمبیان نیستند.تابع:برنامه ای است که برای حل بخشی از مسئله نوشته می شود. با استفاده از توابع می توان برنامه های ساخت یافته نوشت که وظایف این نوع برنامه ها توسط بخش های مستقلی که تشکیل دهنده برنامه اند انجام می شود. این بخش های مستقل همان توابع هستند.امتیازهای برنامه نویسی ساخت یافته عبارتند از:1- نوشتن برنامه های ساخت یافته آسان است، زیرا برنامه های پیچیده به بخش های کوچک تری تقسیم می شوند و هر بخش توسط تابعی نوشته می شود. دستورالعمل ها و داده های موجود در تابع، مستقل از سایر بخش های برنامه است.2- همکاری بین افراد را فراهم می کند.به طوری که افراد می توانند بخش های مختلفی از برنامه را بنویسند.3- اشکال زدایی برنامه های ساخت یافته ساده تر است.اگر برنامه اشکالی داشته باشد، بررسی تابعی که این اشکال در آن به وجود آمده ساده است.4- برنامه نویسی ساخت یافته موجب صرفه جویی در وقت می شود.توابع کتابخانه ایC دارای توابعی است که از قبل نوشته شده اند، و توابع کتابخانه ای نامیده می شوند .در واقع فرایند هایی که پر کاربرد هستند و در اغلب برنامه ها مورد استفاده قرار می گیرند به صورت توابع مستقل قبلاً نوشته شده اند.نوشتن توابع- برای نوشتن تابع باید اهداف مشخص باشد.- هر تابع سه بخش دارد:فراخوانی، الگوی تابع، تعریف تابع- تعریف تابع مجموعه ای از دستورهاست که عملکرد تابع را مشخص می کند.- فراخوانی تابع دستوری است که تابع را فراخوانی می کند که با نام تابع انجام می شود.&lt;نوع تابع=”&#34;&gt; – “نوع تابع” یکی از چیزهایی است که توسط کاربر تعریف می شود.نکات مهم در استفاده از توابع1.الگوی تمام توابع را قبل از تابع ()main اعلان کنید.(البته می توانید در خود تابع ()main نیز اعلان کنید.)2.نوع توابع را تعیین نمایید.3.برای اجرای توابع آنها را با نامشان فراخوانی کنید.4.متغیرهای مورد نیاز توابع را در داخل توابع تعریف کنید.5.تعریف تابع در داخل تابع دیگر امکان پذیر نیست.6.هنگام فراخوانی تابع دقت داشته باشید که تعداد و نوع پارامترها وآرگومان ها یکسان باشد.7.توابع از نظر تعداد مقادیری که می توانند به تابع فراخوان برگردانند به سه دسته تقسیم می شوند 1.توابعی که هیچ مقداری برنمی گردانند 2.توابعی که یک مقدار برمی گردانند3.توابعی که چندین مقدار برمی گردانند.8. هنگام اعلان الگوی توابع، نیاز به ذکر اسامی پارامترها نیست و ذکر نوع آن ها کفایت می کند.9.اگر تابعی فاقد آرگومان است به جای لیست آرگومان ها کلمه void قرار دهید.نکاتی درباره نوشتن توابع1.ابتدا بدون پرداختن به جزئیات پیاده سازی توابع، آرگومان ها و نتیجه ای که از توابع انتظار دارید، مشخص کرده و برنامه اصلی را بنویسید.2.توابع را طوری طراحی وپیاده سازی کنید که هر تابع فقط به آنچه که نیاز دارد دسترسی داشته باشد و بقیه قسمت های برنامه و سایر اطلاعات توسط توابع غیر مرتبط قابل دستیابی نباشد.3.برای ارتباط بین توابع از آرگومان ها و پارامترها استفاده کنید.مثال هايي از برنامه نويسي به زبان سي1.تابعی بنویسید که درجه فارنهایت را به سانتیگراد تبدیل کند؟2.تابعی بنویسید که مقدار صحیح و غیر منفی k را دریافت کرده وk! را محاسبه و ارسال نماید.3.تابعی بنویسید که سه مقدار صحیح را دریافت کند و کوچک ترین آن ها را پیدا نموده و ارسال کند.4.تابعی بنویسید که یک مقدار صحیح و یک مقدار اعشار ساده را دریافت کند وچنانچه اختلاف دو عدد کمتر از 0.0001باشد حرف t و در غیر این صورت حرف fرا بازگرداند.5.تابعی بنویسید که یک عدد صحیح دریافت کند و اول بودن یا نبودن آن را مشخص کند و در صورت اول بودن 1 و در غیر این صورت 0 را ارسال کند.6.برنامه ای بنویسید که هریک از اعداد1 تا 10 را همراه با فاکتوریل آن ها مقابل هم چاپ کند.7.برنامه ای بنویسید که سه مقدار صحیح را خوانده و حداقل آن ها را چاپ کند.(با استفاده از تابع)8.تابعی بنویسید که مقدار π را از فرمول (…+7/1-5/1+3/1-1)4=π تا زمانی که آخرین عبارت از0.0001 بیشتر است بدست آورده و ارسال کند.9.برنامه ای نویسید که با استفاده از تابع مثال قبل مقدار عدد π را چاپ کند.10.تابعی بنویسید که مقدار عدد π را از فرمول (…+7/1-5/1+3/1-1)4=π تا n جمله به دست آورده و چاپ کند.11.برنامه ای بنویسید که ابتدا سری اعداد فیبوناتچی را تا جمله دوازدهم چاپ کرده و سپس یک عدد از ورودی بخواند و جزء سری بودن یا نبودن آن را بررسی و اعلام کند.(با استفاده از دو تابع)12.برنامه ای بنویسید که معکوس 123 را چاپ کند.13.برنامه ای بنویسید که متنی را دریافت کند و تمام حروف a را که در متن وجود دارد را به A تبدیل کند و متن را دوباره چاپ کند. 14.برنامه ای بنویسید که دو ماتریس را از کاربر بگیرد سپس آن ها را در هم ضرب کرده و نمایش دهد.متغيرها:متغیرهای محلی (local) :متغیرهایی که در بدنه تابع معرفی می شوند، متغیرهای محلی هستند که فقط در همان تابعی که معرفی شده اند قابل استفاده هستند. پارامترهای تابع نیز که در عنوان تابع معرفی شده اند متغیرهای محلی هستند.متغیرهای سراسری (global):این متغیرها را می توان خارج از توابع مثلاً ابتدای برنامه قبل از تعریف تابع Main یا قبل از تعریف هر تابع دیگر معرفی کرد. متغیرهایی که خارج از توابع معرفی شوند، توسط کلیه توابعی که از آن به بعد تعریف شده اند، قابل استفاده اند.پس از هر فراخوانی همین که اجرای تابع خاتمه یافت، متغیرهای محلی آن از بین می روند. ولی متغیرهای سراسری تا پایان اجرای تابع mainفعال و قابل استفاده اندحوزه دسترسی به متغیر:محدوده ای که هر متغیر در آن قابل دسترسی است حوزه دسترسی نامیده می شود. متغیرهایی که به صورت محلی در ابتدای تابع معرفی شده اند دارای حوزه دسترسی تابع هستند. متغیرهایی که در یک بلوک به طور محلی تعریف شده اند دارای حوزه دسترسی بلوک هستند . متغیرهایی که خارج از توابع معرفی شده اند دارای حوزه دسترسی فایل می باشند.کلاس های حافظه دارای چهار نوع اتوماتیک، ثبات، خارجی، ایستا هستند که به ترتیب توسط کلمات auto ،، register ، extern و static مشخص می شوند.انواع متغیرها و داده ها در Cزبان C قابلیت های زیادی برای کار با داده ها دارد. تمام انواع عددی و غیر عددی به صورت کارا در سی یافت می شوند. در زیر به اختصار به بعضی اشاره می شود:intاین نوع داده از نوع عددی صحیح (integer) است. در حافظه 2 بایت اشغال می کند ولی برخی کامپایلرها برای آن 4 بایت در نظر می گیرند.floatاین نوع داده از نوع اعشاری است. معمولا در حافظه 4 بایت اشغال می کند و اعداد اعشاری مثبت و منفی را در خود جای می دهد.doubleاین نوع داده برای استفاده در اعداد اعشاری است که مقدار بیش تری فضا باید اشغال کنند. این نوع داده نیز 8 بایت اشغال می کند.charاین نوع داده برای ذخیره ی کاراکتر استفاده می شود و 1 بایت اشغال می کند.long intبرای داده های صحیحی که در حافظه فضای بیش تری اشغال می کنندو 4 بایت اشغال می کند.short intبرای داده های صحیح که نیاز به حافظه ی زیادی ندارند قابل استفاده است.unsigned intاین نوع داده از نوع عددی صحیح بدون علامت است.استفاده از آرایه ها در زبان Cبسیاری از موارد پیش می آید که برنامه نویس نیاز به استفاده از تعداد زیادی متغیر پیدا می کند. مثلا اگر بخواهیم جملات 1 تا 100 سری فیبوناچی را برای استفاده ذخیره کنیم، به صد متغیر نیاز داریم. تعریف این صد متغیر به صورت مستقل و با نام های جداگانه کاری سخت و طاقت فرساست و البته معقولانه نیست. به همین خاطر در زبان C قابلیتی پیش بینی شده تا بتواند تعداد دلخواهی متغیر از یک نوع را به راحتی ایجاد کرد.به این متغیر ها که در حافظه پشت سر هم قرار می گیرند و همگی از یک نوع هستند آرایه (Array) می گویند. آرایه ها کاربردهای بسیار زیادی دارند و همانند دنباله ها در ریاضی عمل می کنند. همان طور که در ریاضی برای مشخص کردن یک جمله از دنباله از اندیس استفاده می کنیم، در C نیز برای مشخص کردن یک متغیر خاص از اندیس استفاده می شود.همان طور که مشاهده می کنید خانه ی پنجم شماره ی 4 دارد و این بدین خاطر است که خانه ها از شماره ی 0 تا n-1 (که n تعداد خانه هاست) شماره گذاری می شود. پس باید به این مورد دقت کرد. مورد دیگر این که شماره ی خانه در [] قرار می گیرد. درون علامت آکلاد می توان عبارت نیز قرار داد.همان طور که گفته شد در حافظه ی رایانه خانه های آرایه پشت سر هم قرار می گیرند. اندازه ی هر خانه به اندازه ی نوع تعریف شده است. مثلا در مثال قبل اگر int دو بایت اشغال کند آرایه ی array، در کل 20 بایت از حافظه اشغال خواهد کرد. این که خانه ها پشت سر هم قرار میگیرند ویژگی کارایی است که در بحث اشاره گر ها به کار می آید.زبان برنامه‌نویسی سي پلاس پلاس  ++Cزبان برنامه‌نویسی ++C (سی پلاس پلاس) یک زبان برنامه‌نویسی رایانه‌ای همه‌منظوره، شیءگرا، سطح بالا و چندرگه (که از برنامه‌نویسی رویه‌ای، تجرید داده‌ها و برنامه‌نویسی شیءگرا پشتیبانی می‌کند)، عمومی و با قابلیت‌های سطح بالا و سطح پایین می‌باشد.این زبان دارای قابلیت‌های انواع داده ایستا، نوشتار آزاد، چندمدلی، معمولاً زبان ترجمه شده با پشتیبانی از برنامه‌نویسی ساخت‌یافته، برنامه‌نویسی شیءگرا، برنامه‌نویسی جنریک است. ++C به همراه جد خود C از پرطرفدارترین زبان‌های برنامه‌نویسی تجاری هستند.زبان ++c یک زبان سطح میانی در نظر گرفته می‌شود. این زبان دارای قابلیت زبان‌های سطح بالا و پایین به‌صورت هم‌زمان است. زبان ++C توسط بی‌یارنه استراس‌تروپ دانمارکی در سال ۱۹۷۹ درآزمایشگاه‌های بل (Bell Labs)، برای بهبود زبان سی و بر مبنای آن ساخته شد و آن را “C با کلاس” (C With Classes) نام‌گذاری نمودند. در سال ۱۹۸۳ به ++c تغییر نام داد. توسعه با اضافه نمودن کلاس‌ها و ویژگی‌های دیگری مانند توابع مجازی، سربارگزاری عملگرها، وراثت چندگانه، قالب توابع، و پردازش استثنا انجام شد. این زبان برنامه‌نویسی در سال ۱۹۹۸ تحت نام ISO/IEC ۱۴۸۸۲:۱۹۹۸ استاندارد شد. نسخه فعلی استاندارد این زبان ISO/IEC ۱۴۸۸۲:۲۰۰۳ است. نسخه جدیدی از استاندارد (که به صورت غیررسمی C++۰x نامیده می‌شود) در دست تهیه است.تاریخچه زبان ++Cاستراس‌تروپ کار بر روی زبان «c با کلاس» را در سال ۱۹۷۹ آغاز کرد. ایده ساخت این زبان جدید در زمان کار بر روی تز دکترای خود به ذهن استراس‌تروپ خطور نمود. او متوجه شد که سیمولا دارای ویژگی‌هایی مناسب برای ساخت برنامه‌های بسیار بزرگ است اما برای استفاده عملی بسیار کند است اما BCPL با وجود سرعت بسیار زیاد برای ساخت برنامه‌های بزرگ بسیار سطح پایین است. زمانی که استراس‌تروپ کار خود را در آزمایشگاه‌های بل (Bell Labs) آغاز نمود با مشکل تحلیل هسته unix با توجه به محاسبات توزیع شده روبرو شده بود. با یادآوری تجربیات خود در دوران دکترا، او زبان C را با استفاده از ویژگی‌های سیمولا گسترش داد. C به این دلیل انتخاب شد که یک زبان عمومی، سریع، قابل حمل، و به‌صورت گسترده در حال استفاده بود. علاوه بر C و سیمولا زبان‌های دیگری مانند ALGOL ۶۸، ADA، CLU، ML نیز بر ساختار این زبان جدید اثر گذاشت.در ابتداویژگی‌های کلاس، کلاس‌های مشتق شده، کنترل نوع قوی، توابع درون‌خطی، و آرگومان‌های پیش‌فرض از طریق Cfront به C اضافه شد. اولین نسخه تجاری در سال ۱۹۸۵ ارائه شد. در سال ۱۹۸۳ نام زبان از «C با کلاس» به ++C تغییر یافت.ویژگی‌های دیگر شامل توابع مجازی، سربارگزاری عملگر و نام تابع، ارجاعات، ثوابت، کنترل حافظه توسط کاربر به‌صورت آزاد، کنترل نوع بهتر، و توضیحات یک‌خطی به صورت BCPL با استفاده از «//» نیز به آن اضافه شد. در سال ۱۹۸۵ اولین نسخه زبان برنامه‌نویسی ++C انتشار یافت و مرجع مهمی برای این زبان فراهم شد در حالی که هیچ استاندارد رسمی‌ای وجود نداشت. در سال ۱۹۸۹ ویرایش ۲٫۰ از زبان ++C ارائه شد. ویژگی‌های جدیدی مانند ارث‌بری چندگانه، کلاس‌های انتزاعی، اعضای ایستای توایع، اعضای ثابت تابع، و اعضای حفاظت شده به آن اضافه شد.در سال ۱۹۹۰ «راهنمای مرجع ++C» منتشر شد. این کار بنیان استانداردهای بعدی شد. آخرین ویژگی‌های اضافه شده شامل موارد زیر بودند:قالب توابع، استثناها، فضاهای نام، تبدیلات جدید، و یک نوع داده منطقی.در حین تکامل ++C کتابخانهٔ استاندارد نیز به‌وجود آمد. اولین نسخهٔ کتاب استاندارد شامل کتابخانهٔ جریانات I/O بود که جایگزین printf و scanf شد. در ادامه مهم‌ترین ویژگی اضافه شده Standard Template Library بوده‌است.نامگذاري  ++Cاین نام منسوب به ریک ماسکیتی (اواسط ۱۹۸۳) است و برای اولین بار در دسامبر سال ۱۹۸۳ به کار برده شد. در طول مدت تحقیق این زبان بنام «C جدید» و بعدها «C با کلاس» خوانده شد. در علوم کامپیوتر هنوز هم ++C به عنوان ابرساختار C شناخته می‌شود. آخرین نام از عملگر ++ در زبان C (که برای افزایش مقدار متغیر به اندازه یک واحد بکار می‌رود) و یک عرف معمول برای نشان دادن افزایش قابلیت‌ها توسط + ناشی گشته‌است. با توجه به نقل قولی از استراس‌تروپ: «این نام ویژگی‌ها تکاملی زبان در C را نشان می‌دهد.» +C نام زبانی غیرمرتبط به این زبان است. استراس‌تروپ مبدا این نام را در فصل اول کتاب خود «زبان برنامه‌نویسی ++C» اشاره می‌نماید که معنی دیگر ++C را می‌توان در ضمائم کتاب جرج ارول بنام ۱۹۸۴ یافت. در سه قسمت از زبان تخیلی Newspeak «کلمات C» برای اشاره به لغات فنی و حرفه‌ای بکار می‌رود. «دو علامت +» برای ایجاد صفات عالی از صفات Newspeak به کار می‌رفت بنابراین ++C به معنای زبانی با بیشترین شباهت به C است. وقتی که به صورت خصوصی از ریک ماسکیتی در مورد این اسم سوال شد او در جواب گفت که این اسم بصورت خودمانی در بین آنها به کار می‌رفته‌است و تصور نمی‌کردند که این نام بصورت نام رسمی این زبان درآید.توسعه آینده ++‍C++C همچنان در حال تکامل است تا نیازهای آینده را پاسخگو باشد. نسخه جدید استاندارد ++C در حال بررسی است و تحت عنوان C++۰x است که انتظار می‌رود در سال ۲۰۱۰ منتشر گردد. تغییرات کنونی نشان می‌دهد که همچنان به صورت چندمدلی ++C تاکید می‌گردد. توسعه‌های مهم پشتیبانی از چندرشته‌ای و مفاهیمی برای راحت نمودن کار با قالب‌هاست. اضافه نمودن ویژگی جمع‌آوری زباله به آن به شدت مورد بحث است. Boost.org گروهی برای بیشترین استفاده از ویژگی‌های فعلی ++C می‌باشد. آنها ویژگی‌های تابعی و فرابرنامه‌نویسی آن را گسترش می‌دهند و در مورد ++C به کمیته استاندارد نصیحت‌هایی نموده‌است که کدام ویژگی‌ها خوب عمل نمی‌کنند و کدام‌ها نیاز به توسعه دارند.کتابخانه استاندارد ++Cدر سال ۱۹۹۸ استاندارد ++C شامل دو بخش هسته زبان و کتابخانه استاندارد ++C است. این کتابخانه شامل بیشتر بخش‌های STL و کتابخانه استاندارد C است. بیشتر کتابخانه‌های ++C در استاندارد وجود ندارند و یا استفاده از تعریف قابلیت پیوند کتابخانه‌ها را می‌توان در زبان‌هایی مانند فرترن، C، پاسکال، بیسیک نوشته شوند.البته با توجه به ویژگی‌های کامپایلر مشخص خواهد شد که کدام زبان را می‌توان استفاده نمود.کتابخانه استاندارد ++C شامل کتابخانه استاندارد C با یک سری تغییرات برای بهبود عملکرد است. بخش بزرگ بعدی این کتابخانه STL است. STL شامل ابزار بسیار قدرتمندی مانند نگه‌دارنده‌ها (مانند vector و list)، تکرارکننده‌ها (اشاره‌گرهای عمومی شده) برای شبیه‌سازی دسترسی مانند آرایه الگوریتم‌هایی برای جستجو و مرتب‌سازی در آنها وجود دارند. نقشه‌ها (نقشه‌های چندگانه) (آرایه شرکت‌پذیر) و مجموعه‌ها (مجموعه‌های چندگانه) واسط‌های عمومی فراهم می‌سازند.در نتیجه با استفاده از قالب تابع، الگوریتم‌های جنریک با هر نگه‌دارنده و دارای تکرارکننده عمل نماید. همانند C ویژگی‌های کتابخانه را می‌توان با استفاده از شبه دستور include# شامل یک سرآیند استاندارد اضافه نمود.C دارای ۶۹ کتابخانه استاندارد است که ۱۹ تا از آنها نامناسب تشخیص داده شده‌اند. استفاده از کتابخانه استاندارد – مانند std::vector یا std::string به جای آرایه‌های C- موجب ایجاد برنامه‌های مطمئن‌تر شده‌است. STL در آغاز محصولی جداگانه از HP و سپس SGL پیش از ادغام در کتابخانه استاندارد ++C بوده‌است. استاندارد عبارت STL را بکار نمی‌برد بلکه آن را بخشی از کتابخانه می‌داند اما مردم هنوز هم آن را برای جداسازی بخش‌های مختلف کتابخانه با این نام بکار می‌برند.(جریان‌های ورودی/خروجی، جهانی‌سازی، تشخیص، زیرمجموعه کتابخانه C) بیشتر کامپایلرها کتابخانه استاندارد و STL را پیاده‌سازی می‌نماید. پیاده‌سازی‌های مستقلی نیز همانند STLport نیر وجود دارند.پروژه‌های دیگر نیز پیاده‌سازی‌های خود را از STL با توجه به اهداف خود بوجود می‌آورند.ویژگی‌های معرفی شده در ++Cدر مقایسه با C زبان ++C ویژگی‌های جدیدی را معرفی نموده‌است مانند تعریف متغیر به عنوان عبارت، تغییر نوع‌های همانند تابع، new/delete، نوع داده bool، توابع درون‌خطی، آرگومان پیشفرض، گرانبارسازی عملگر و تابع، فضای نام و عملگر تعیین حوزه ::، کلاس‌ها (شامل تمام ویژگی‌های مربوط به کلاس‌ها همانند وراثت، اعضای تابع، توابع مجازی، کلاس‌های انتزاعی، و سازنده‌ها)، قالب‌ها، پردازش استثنا، کنترل نوع زمان اجرا، عملگرهای سربار شده ورودی (&lt;&lt;) و خروجی (&gt;&gt;).برخلاف باور عموم ++C نوع داده ثابت را معرفی ننموده‌است. کلمه const کمی پیش از استفاده از این کلمه در ++C توسط زبان C بصورت رسمی بکار گرفته شد. در بعضی حالات ++C تعداد کنترل نوع بیشتری نسبت به زبان C انجام می‌دهد.توضیحات با استفاده از // قبل از زبان C در زبان BCPL معرفی شده بود که مجدداً در زبان ++C به کار گرفته شد.بعضی ویژگی‌های ++C بعداً توسط C به کار گرفته شد مانند نحوه تعریف for، توضیحات به شکل ++C           (با استفاده از //)، و کلمه inline با وجود اینکه تعریف این کلمه در C با تعریف آن در زبان ++C هماهنگی ندارد. همچنین در C ویژگی‌هایی معرفی شده‌است که در ++C وجود ندارند مانند ماکروهای قابل تغییر و استفاده بهتر از آرایه‌ها به عنوان آرگومان. بعضی کامپایلرها این ویژگی‌ها را پیاده نموده‌اند اما در بقیه این ویژگی‌ها موجب ناهماهنگی می‌گردد.ساختار برنامه‌هاساختار برنامه‌ها در این زبان بدین صورت است که همانند زبان سی، هر برنامه بایستی یک تابع اصلی (main) به عنوان بدنه برنامه داشته باشد.هر برنامه معمولاً از تعداد زیادی فایل تشکیل می‌شود که به هم الحاق می‌گردند (با دستور include) و به این فایل‌های الحاقی سرآیند (Header) می‌گوییم. فایل‌های الحاقی حاوی کدها یا نسخه‌های اجرایی کلاس‌ها (مجموعه متغیرها و توابع) می‌باشند که در بدنه اصلی برنامه از آنها استفاده می‌شود.معمولاً هر کلاس (که تعریف یک نوع داده‌ای با متدهای مربوط به آن است) را در یک سرآیند می‌نویسند. هر سرآیند که معمولاً تنها تعاریف (معرفی) کلاس را در خود دارد به همراه فایل‌های پیاده سازی به زبان ++C یا پیاده سازی‌های کامپایل شده (به صورت فایل اشیا مانند dll یا so یا … ) می‌تواند به کار برده شود. به مجموعه‌های یکپارچه‌ای از کلاس‌های پیاده سازی شده (به صورت فایل‌های سرآیند با پیاده سازی‌های کد یا اشیای زبان ماشین) که برای برنامه نویسی به کار می‌روند، یک کتابخانه ++C گفته می‌شود و قدرت اصلی این زبان در امکان به کارگیری کتابخانه‌های آماده می‌باشد.کتابخانه‌های بزرگ ++C مانند STL، MFC، QT و … مجموعه قدرتمندی برای تولید برنامه در این زبان ایجاد کرده‌اند.زبان برنامه نويسي ++C بر زبان هاي برنامه نويسي ديگر مانند:پی‌اچ‌پی (PHP)سی‌شارپ جاوا (#C)پرل (Perl)تاثير گذاشته است.فرق بين سي C با ++C چيست؟زبان C زبان برنامه نویسی Structured (ساخت یافته) است اما ++‍C زبان برنامه نویسی Object Oriented ( شی ء گرا ) می باشد.از لحاظ دستوری فرق زیادی با هم ندارند، اماتفاوت عمده این است که ++C از شی گرایی پشتیبانی می کند که سی C این قابلیت رو ندارد…امروزه دیگر بدون شی گرایی اصلا نمي توان نرم افزار های بزرگ نوشت.اکثر زبان های برنامه نویسی رایج و قوی الان شیگرا هستند.فرق بين سي شارپ #C با ++C چيست؟1- با C#‎ فقط برنامه های تحت .NET میشه نوشت (در واقع C#‎ برای .NET درست شده) ، اما با C++‎ هم برنامه های تحت .داتNET و هم برنامه های native میشه نوشت.2-هنوز برای کارهای سطح پایین (مثل Device Driver) و سنگین (مثل بازی های سه بعدی) C++‎ انتخاب اول و آخر محسوب میشه3- C#‎ خیلی راحتتر ، تمیزتر و خوش ساخت تر از C++‎ طراحی شده و از نظر شی گرایی هم پشتیبانی بهتری داره نسبت به C++‎ . C#‎ کاملا شی گراست و اصلا نمیتونید برنامۀ غیر شی گرا در اون بنویسید ، در صورتی که با C++‎ میتونین هم شی گرا و هم غیر شی گرا ، برنامه بنویسید. از ویژگی های C#‎ :1- مدیریت خودکار حافظه توسط CLR2- پشتیبانی از یک نوع String داخلی3- پشتیبانی از foreach4- پشتیبانی کامل از delegate و event و interface و Property و attribute ها5- XML Documentation6- checked / unchecked keywordsدر C#‎ برای انجام تمام کارها از کلاس های .NET استفاده میشه، در ضمن در C#‎ چیزی به نام فایلهای Header و #include و از این حرفا نداریم.در واقع C#‎ خیلی زیباتر از C++‎ طراحی شده، چون به هر حال در طراحی C#‎ از زبانهایی مثل C++‎ و JAVA و Delphi درس گرفته شده و اشتباهات اون زبانها در C#‎ تکرارنشدهبه عنوان مثال در C++‎ به تعداد انگشتان دست، نوع داده String داریم.یا Multiple Inheritance که خیلی دردسر سازه، یا مثلا در JAVA ، enum ها و Operator Overloading و Pointer و Property ها که همگی جزو ضروریات محسوب میشن، وجود ندارن.البته کسانی که میخوان کار سنگین یا سطح پایین در داتNET انجام بدهند ، معمولا همه قسمتهایی رو که امکانش هست با C#‎ می نویسن و بقیه رو با C++‎در C#‎ از کلاسهای نوشته شده در C++‎ استفاده می کنن (WrapperClasses )در کل C#‎ ، سطح بالاتر (High Level ) از C++‎ استدر C++‎ حتی میتونید مستقیما از کد اسمبلی استفاده کنید.در ضمن C#‎ اولین زبان Component Oriented در خانواده C محسوب میشود.بصورت خلاصه مي توان گفت:بزرگترین شباهت این دو زبان اینه که هر دو جزو خانواده C هستند.و بزرگترین تفاوت اینکه: C#‎ یک زبان type-safe هست (بر خلاف C++‎ ) و فقط باهاش میشه برنامه های تحت .NET نوشت.2.زبان htmlزبان نشانه گذاری HTML به عنوان اولین پایه برای هر دوره آموزش طراحی سایت در نظر گرفته می‌شود. این زبان چیست و چه کاربردی دارد؟ HTML مخفف عبارت Hypertext Markup Language است. این زبان در واقع یکزبان نشانه گذاری HTML به عنوان اولین پایه برای هر دوره آموزش طراحی سایت در نظر گرفته می‌شود. این زبان چیست و چه کاربردی دارد؟HTML مخفف عبارت Hypertext Markup Language است. این زبان در واقع یک نوع زبان نشانه‌گذاری استاندارد برای ایجاد صفحات وب و وب اپلیکیشن‌ها محسوب می‌شود. در واقع HTML را عنصر کلیدی صفحات وب می‌دانند و تمامی زبان‌های برنامه‌نویسی برای طراحی سایت، به شکلی به HTML وابسته هستند. با استفاده از این زبان و CSS و جاوا اسکریپت، تکنولوژی‌های بنیادین برای شبکه جهانی وب تشکیل می‌شود. مرورگرها اسناد HTML را از وب سرور یا مخزن لوکال (Local) دریافت کرده و آن‌ها را به صفحات وب چند رسانه‌ای تبدیل می‌کنند. در واقع HTML ساختار معنایی صفحات وب را تعریف کرده و شامل مشخصات ظاهری سند است. ? مولفه‌های HTML بلوک‌های سازنده صفحات HTML را تشکیل می‌دهند. با استفاده از آن‌ها می‌توان تصاویر و اشیا دیگر مثل فرم‌های تعاملی را در صفحات ایجاد شده تعبیه کرد. این زبان ابزاری برای ایجاد سندهای ساختار یافته از طریق مشخص کردن معنای ساختاری برای متن مثل تیترها، پاراگراف‌ها، فهرست‌ها، لینک‌ها، نقل قول‌ها و سایر موارد ارائه می‌دهد.مولفه های HTML از طریق تگ‌های قرار گرفته در پرانتز شکسته مشخص می‌شوند. تگ‌هایی مانند &lt;/  img&gt; و &lt;/  input&gt; محتوا را به صورت مستقیم به صفحه معرفی می‌کنند. سایر تگ‌ها مانند &lt;p&gt;...&lt;p/&gt;   اطلاعات مربوط به متن سند را ارائه داده و می‌توانند سایر تگ‌ها را به عنوان مولفه‌های فرعی در خود جای دهند. مرورگرها تگ‌های HTML را نمایش نمی‌دهند بلکه از آن‌ها برای تفسیر محتوای صفحه بهره می‌برند.HTML می‌تواند برنامه‌های نوشته شده به زبان اسکریپتی مانند جاوا اسکریپت را که بر رفتار و محتوای صفحات وب تاثیر می‌گذارند در خود جای دهد. استفاده از CSS ظاهر و آرایش محتوا را تعریف می‌کند. کنسرسیوم جهانی وب که استانداردهای HTML و CSS را تعریف می‌کند، از سال ۱۹۹۷ استفاده از CSS را روی HTML ظاهری توصیه کرده است.تاریخچه پیدایش HTML ? در سال ۱۹۸۰، فیزیکدان «تیم برنرز لی» (Tim Berners-Lee)، یکی از پیمانکاران CERN، سیستم ENQUIRE را پیشنهاد کرد. این سیستم برای محققان CERN ایجاد شده بود تا از آن برای استفاده و اشتراک‌گذاری اسناد استفاده کنند. در سال ۱۹۸۹، برنرز لی یادداشتی نوشت و در آن یک سیستم اینترنتی ابر متن (Hypertext) را پیشنهاد داد. «برنرز لی» HTML را مشخص کرد و نرم افزار مرورگر و سرور را در اواخر ۱۹۹۰ نوشت. در آن سال، برنرز لی و مهندس دیتا سیستم‌های CERN، به صورت مشترک درخواست بودجه کردند اما آن پروژه به صورت رسمی توسط CERN پذیرفته نشد.بیشتر بخوانید:اولین توصیف عمومی از HTML سندی به نام «HTML Tags» بود که ابتدا توسط تیم برنرز لی در اواخر ۱۹۹۱ در اینترنت قرار گرفت. این سند ۱۸ مولفه تشکیل‌دهنده طرح اولیه و نسبتا ساده از HTML بود. HTML یک زبان نشانه‌گذاری است که مرورگرهای وب از آن بر تفسیر و ایجاد متن، تصویر و دیگر متریال‌ها به صفحات وب تصویری و صوتی استفاده می‌کنند. ویژگی‌های پیش‌فرض هر یک از آیتم‌های HTML در مرورگر تعریف شده و می‌توان با استفاده از CSS توسط طراح صفحات وب، آن‌ها را تغییر داده یا ارتقا بخشید. HTML نشانه‌گذاری از چندین مولفه کلیدی شامل تگ‌ها تشکیل شده‌ است. تگ‌های HTML معمولا به صورت جفت‌هایی مانند &lt;h1&gt; و &lt;h1/&gt;  هستند. گرچه برخی از‌ آن‌ها مانند &lt;img&gt;  نشان‌دهنده عناصر خالی بوده و جفت ندارند. اولین تگ در این جفت را تگ آغازین و تگ دوم را تگ پایانی می‌نامند. در زیر یک نمونه از برنامه‌ی کلاسیک «Hello World!» را می‌بینید که یک آزمایش رایج برای مقایسه زبان‌های برنامه‌نویسی، اسکریپت و نشانه‌گذاری است. این نمونه با استفاده از ۹ خط کد منبع نوشته شده است:&lt;!DOCTYPE html&gt;&#xA;&lt;html&gt;&#xA;  &lt;head&gt;&#xA;    &lt;title&gt;This is a title&lt;/title&gt;&#xA;  &lt;/head&gt;&#xA;  &lt;body&gt;&#xA;    &lt;p&gt;Hello world!&lt;/p&gt;&#xA;  &lt;/body&gt;&#xA;&lt;/html&gt;متن میان &lt;html&gt; و &lt;html/&gt;  در واقع صفحه وب را تعریف کرده و متن بین &lt;body&gt; و &lt;body/&gt;  محتوای قابل مشاهده متن است. متن نشانه‌گذاری &lt;title&gt;This is a title&lt;/title&gt; عنوان صفحه مرورگر را تعریف می‌کند.تکامل HTML به مرور زمان ? HTML زبانی است که طی زمان برای ایجاد وب سایت‌های زیباتر و کارآمدتر دچار تحول شد. HTML 1.0 اولین نسخه منتشر شده در جهان بود. در آن زمان تعداد برنامه نویس وب چندان زیاد نبود و این زبان هم تا حدودی محدود کننده به نظر می‌رسید. تنها کاری که می‌شد با نسخه اولیه HTML انجام داد، قرار دادن متن ساده در وب بود. پس از آن نسخه HTML 2.0 به بازار معرفی شد که تمام ویژگی‌های نسخه اول به علاوه چند ویژگی جدید را با خود داشت. این نسخه تا ژانویه ۱۹۹۷ و تعریف ویژگی‌های کلیدی برای HTML، به عنوان استانداردی برای طراحی سایت در نظر گرفته می‌شد.تولد HTML 3.0رفته رفته افراد بیشتری به سمت استفاده از HTML گرایش پیدا کردند، اما نسخه‌های قبلی این زبان هنوز هم برای وب مسترها محدودیت‌هایی ایجاد می‌کرد؛ آن‌ها به دنبال ویژگی‌ها، توانایی‌ها و تگ‌های بیشتری بودند و تمایل داشتند ظاهر سایت خود را ارتقا ببخشند. در همان زمان بود که گروهی خبره HTML، پیش‌نویس جدیدی از این زبان تهیه کرده و آن را HTML 3.0 نامیدند. این نسخه شامل قابلیت‌های جدید و پیشرفته‌ای بود و مژده ابزارهای قدرتمندی برای طراحی سایت را برای طراحان سایت به همراه داشت. متاسفانه مرورگر‌ها این ویژگی‌های جدید را به کندی بارگزاری می‌کردند و تنها بخشی از دستورات اعمال شده بر صفحه اجرا می‌شد؛ بنابراین برنامه‌نویسان استفاده از این نسخه را به فراموشی سپردند.HTML 3.2کمی بعدتر کنسرسیوم وب جهانی اولین کار خود را به بازار ارائه کرد که به HTML 3.2 معروف ‌شد و تغییرات اندکی نسبت به نسخه  پیشین داشت و بسیاری از مراحل بزرگ را به نسخه‌های بعدی موکول کرده بود. بسیاری از تگ‌های قبلی در این نسخه و استانداردهای جدید به چشم نمی‌خورد. اما خیلی زود در ژانویه ۱۹۹۷ به نسخه استاندارد تبدیل شد و امروزه تمام مرورگرها از ویژگی‌های آن به طور کامل پشتیبانی می‌کنند.HTML 4.01؛ تحول بزرگنسخه HTML 4.01 تحول بزرگی نسبت به استانداردهای اولیه HTML در نظر گرفته می‌شد؛ بیشتر کارایی‌های جدیدی که در این نسخه آورده شده بود، در واقع ارتقا و پیشرفتی از نسخه HTML 3.0 به علاوه چندین ویژگی جدید و پیشرفته بود. این نسخه در دسامبر ۱۹۹۷ توسط کنسرسیوم وب جهانی پیشنهاد شد و در آوریل ۱۹۹۸ به استاندارد رسمی طراحی سایت تبدیل شد. پشتیبانی مرورگر از این زبان جدید و تقریبا بیشتر تگ‌ها و خصوصیات توسط مایکروسافت در مرورگر محبوب IE5 صورت گرفت.ورود XHTMLدر ابتدای قرن ۲۱، کنسرسیوم وب جهانی XHTML 1.0 را به بازار پیشنهاد کرد. از ۲۶ ژانویه ۲۰۰۰ این زبان به عنوان استاندارد مشترک با HTML 4.01 در طراحی سایت به کار می‌رود، با این تفاوت‌ که کدها باید در آن طبق قانون نوشته شده و برنامه‌نویس حق تغییر در ترتیب نوشتن کدها را ندارد. پس از این دو نسخه، HTML 5 به بازار عرضه شد که زبانی برای طراحی فعلی و آینده وب سایت‌ها تعریف شده است. برنامه نویسان وب معتقدند ویژگی‌های تعبیه شده در این نسخه تا ده سال آینده پاسخگوی نیازهای وب خواهد بود. بسیاری از بخش‌های آن برای کاربران قبلی HTML آشنا و بسیاری دیگر جدید و ناشناخته است.عناصر HTML ? سندهای HTML به ساختاری از عناصر تو در تو از HTML اشاره دارند. این عناصر در سند توسط تگ‌های HTML مشخص می‌شوند. مابین تگ آغازین و پایانی می‌توان ترکیبی از تگ‌های مختلف و متن را قرار داد. برخی از عناصر مانند link break با علامت &lt;br&gt; اجازه تعبیه هیچگونه محتوا، متن یا تگ دیگری را نمی‌دهند. در صفحات HTML می‌توان عناصر مختلفی مثل عکس، فرم و جدول قرار داد اما برای آن که این عناصر برای مرورگر قابل فهم باشند، باید از کد و تگ مشخصی استفاده کرد تا مرورگر وقتی به قسمت مشخص شده برای آن عنصر رسید، آن را در صفحات اینترنت نمایش دهد.سرتیتر سند HTML به صورت &lt;head&gt;...&lt;head/&gt; نوشته می‌شود. برای مثال:&lt;head&gt;&#xA;  &lt;title&gt;The Title&lt;/title&gt;&#xA;&lt;/head&gt;عنوان در سند HTML با تگ‌های &lt;h1&gt; و &lt;h6&gt;  مشخص می‌شوند:&lt;h1&gt;Heading level 1&lt;/h1&gt;&#xA;&lt;h2&gt;Heading level 2&lt;/h2&gt;&#xA;&lt;h3&gt;Heading level 3&lt;/h3&gt;&#xA;&lt;h4&gt;Heading level 4&lt;/h4&gt;&#xA;&lt;h5&gt;Heading level 5&lt;/h5&gt;&#xA;&lt;h6&gt;Heading level 6&lt;/h6&gt;کد HTML به کار رفته برای نمایش پاراگراف به این صورت است:&lt;p&gt;Paragraph 1&lt;/p&gt;  &lt;p&gt;Paragraph 2&lt;/p&gt;با توجه به تعاریف گفته شده، حالا می‌توان به چند نتیجه مهم در مورد HTML دست یافت:HTML زبان پیچیده برنامه نویسی نیست، بلکه برای توصیف صفحات وب از طریق متن عادی به کار می‌رود.هر صفحه وب در واقع یک فایل HTML است و هر فایل HTML یک متن ساده است. اما فایل .html به جای متن، از چندین تگ HTML و محتوا ساخته شده استیک وب سایت اغلب حاوی چندین فایل HTML است که به یکدیگر لینک شده‌ و قابل ویرایش هستند.تگ‌های HTML در واقع کلمات کلیدی پنهان شده در صفحات وب هستند که مشخص می کنند مرورگر چطور باید محتوا را نمایش دهد.اکثر تگ‌ها دو بخش آغازین و پایانی را دارند. تگ پایانی همان متن تگ آغازین را دارد اما یک اسلش (/) به قبل از آن اضافه شده است مثل  &lt;html&gt; و &lt;html/&gt;  که اولی تگ آغازین و دومی تگ پایانی است.تگ‌ها می‌توانند دارای خصوصیت یا attribute باشند یعنی می‌توان آن‌ها را به شکل دلخواه تغییر داد. برای این کار  باید با استفاده از علامت مساوی، مقداری را تعیین کرد مثل &#34;0&#34;=border و &#34;%50&#34;=width اما برخی دیگر مانند &lt;hr  noshade&gt; را فقط باید داخل تگ عنوان کرد.فایل‌های HTML باید با پسوند .htm یا .html مشخص شوند.مشخصات صفحات وب توسط تگ‌های HTML توصیف می‌شوند.HTML اساس و بنیان ایجاد صفحات وب است اما برای زیباسازی آن‌ها باید از CSS بهره برد.تفاوت HTML و XHTML ? XHTML هم مانند HTML یک زبان است که صفحات وب با آن نوشته می‌شوند، با این تفاوت که HTML زبانی مبتنی بر SGML (زبان نشانه‌گذاری تعمیم یافته استاندارد) و XHTML زبانی مبتنی بر XML (زبان نشانه‌گذاری گسترش پذیر) است. این دو زبان را می‌توان دو روی یک سکه دانست که برای ساخت صفحات وب مکمل یکدیگر هستند. زبان XHTML برای مطابقت با استانداردهای XML از زبان HTML مشتق شده است اما در مقایسه با والد خود، بسیار سرسختانه تر بوده و به کاربر اجازه سلیقه‌ای عمل کردن در کدها و ساختارها را نمی‌دهد. علت ایجاد این زبان تگ‌های پیچیده‌ي مرورگرها بود. صفحاتی که به زبان HTML نوشته شده بودند در مرورگرها مختلف ظاهر متفاوتی از خود نشان می‌دادند. فایل‌های XHTML را می‌توان با پسوندهای .xhtml، .xht، .xml، .html و .htm مشاهده کرد.اگر بخواهیم مقایسه کلی داشته باشیم باید گفت که HTML زبان نشانه‌گذاری غالب برای ایجاد صفحات وب است. با استفاده از این زبان برای عناوین، فهرست‌ها، لینک‌ها و غیره ساختارهای معنایی ایجاد کرده و امکان تعبیه تصاویر و اشیاء را برای ایجاد فرم‌های تعاملی ایجاد می‌کند. XHTML از خانواده زبان‌های XML است که نقطه مقابل نسخه‌های مختلف HTML محسوب می‌شود. این زبان عناصر و تگ‌ها را از HTML و قوانین و مقررات را از XML در خود گنجانده است. در این زبان اجازه حذف هیچ نوع تگ یا استفاده از به حداقل رسانی خصوصیات وجود ندارد. در XHTML باید برای هر تگ آغازین یک تگ پایانی وجود داشته باشد و تمام تگ‌های تو در تو باید در ترتیب مشخصی قرار داشته باشند. برای مثال، در حالی که تگ &lt;br&gt; در HTML مجاز است، در زبان XHTML باید به صورت &lt;/  br&gt; نوشته شود.سندهای HTML از عناصری تشکیل شده‌اند که دارای سه مولفه یک جفت تگ، خصوصیات عنصر که در داخل تگ داده شده است و محتوای واقعی، متنی و گرافیکی هستند. عنصر HTML می‌تواند هر چیزی باشد که بین تگ‌ها قرار می‌گیرد.  سندهای XHTML تنها دارای عنصر ریشه هستند. تمام عناصر شامل متغیرها باید با حروف کوچک نوشته شده و مقادیر نسبت داده شده به آن‌ها باید داخل علامت نقل قول قرار گیرد تا قابل شناسایی باشد. بر خلاف HTML، انجام این کار در XTML اجباری است.ارتباط HTML و CSS ? HTML و CSS دو نوع مختلف نشانه‌گذاری هستند که هر کدام ترتیب معینی برای نوشتن کد دارند. اما تفاوت مهمی بین این دو وجود دارد. می‌توان گفت که HTML ساختار صفحه را تشکیل می‌دهد در حالی که CSS ظاهر صفحه را به عهده دارد. تفاوت ظاهر سایت‌های مختلف به نحوه استفاده از CSS توسط طراح سایت بستگی دارد. در واقع CSS زبانی برای توصیف ظاهر صفحات وب شامل رنگ‌ها، چارچوب پیرامون عکس، نشانگر ماوس، آرایش و فونت‌ها (اندازه، رنگ، نوع) است. با استفاده از CSS می‌توان نمایش صفحه ‌را برای انواع مختلف دستگاه مانند صفحات بزرگ، صفحات کوچک و پرینترها تنظیم کرد. CSS مستقل از HTML است و می‌توان آن را با هر نوع زبان نشانه‌گذاری مبتنی بر XML به کار برد. تفکیک HTML از CSS حفظ و نگهداری وب سایت، اشتراک‌گذاری Style Sheet (شیوه‌نامه) بین صفحات و انطباق صفحات با محیط‌های مختلف را ساده‌تر می‌کند. به این کار تفکیک ساختار یا محتوا از نما یا ظاهر می‌گویند.بیشتر بخوانید:CSS را به سه طریق می‌توان به عناصر HTML اضافه کرد:- روش inline: از طریق استفاده از خصوصیت style در عناصر HTML (استایل‌های هر عنصر داخل تگ نوشته می‌شوند)&lt;h1 style=&#34;color:blue;&#34;&gt;This is a sample text&lt;/h1&gt;- روش internal: از طریق عنصر &lt;style&gt; در بخش &lt;head&gt; (تمامی کدهای css صفحه در تگ head و style نوشته می‌شوند)&lt;!DOCTYPE html&gt;&#xA;&#xA;  &lt;html&gt;&#xA;&#xA;  &lt;head&gt;&#xA;&#xA;  &lt;style&gt;&#xA;&#xA;  body {background-color: red;}&#xA;&#xA;h1   {color: blue;}&#xA;&#xA;p    {color: red;}&#xA;&#xA;&lt;/style&gt;&#xA;&#xA;&lt;/head&gt;&#xA;&#xA;&lt;body&gt;&#xA;&#xA;&#xA;&#xA;&lt;h1&gt;This is a heading&lt;/h1&gt;&#xA;&#xA;&lt;p&gt;This is a paragraph.&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&lt;/body&gt;&#xA;&#xA;&lt;/html&gt;- روش external: از طریق استفاده از یک فایل CSS خارجی (استایل‌ها در یک فایل CSS جداگانه نوشته شده و لینک آن در هدر صفحه گنجانده می‌شود و بهترین روش برای افزودن CSS به HTML محسوب می‌شود.)&lt;head&gt;&#xA;&#xA;&lt;link rel=&#34;stylesheet&#34; href=&#34;styles.css&#34;&gt;&#xA;&#xA;&lt;/head&gt;اگر به طراحی سایت علاقه دارید و دوست دارید با زبانی ساده پایه‌های طراحی وب را فرا بگیرید و پس از آن با دوره‌های تخصصی‌تر، مبانی پیشرفته طراحی سایت را  آموزش ببینید، مقالات و ویدیوهای آینده ما را دنبال کنید. به زودی، در مقالات بعدی به آموزش گام به گام HTML می‌پردازیم.</description><category>digipatra</category><author>digipatra</author><pubDate>Thu, 02 Apr 2020 02:33:36 +0430</pubDate></item><item><title>لیست بهترین نرم افزار های طراحی سایت</title><link>https://virgool.ir/@digipatra/لیست-بهترین-نرم-افزار-های-طراحی-سایت-nteyhhvpdi2v</link><description>فهرست برترین نرم افزار های طراحی سایت در سال 2019آیا شما قصد انجام طراحی سایت خود را دارید؟ آیا به دنبال یک نرم افزار مناسب برای انجام این کار هستید؟در این بخش از مقالات شرکت نوپرداز من لیستی از بهترین نرم افزارهای طراحی سایت را که می توانید از آن ها استفاده کنید، قرار داده ام.طراحی وب سایت امروزه به دو صورت انجام می شود :طراحی سایت با استفاده از کدنویسی و تحت وب  که توسط متخصصان و برنامه نویسان انجام می شود و بدون دانش برنامه نویسی نمی توان وب سایتی را ساخت .در طراحی وب سایت اختصاصی، صفحات وب به صورت استاتیک و داینامیک ایجاد شده که با استفاده از نرم افزار های متعددی انجام می شود که در این مقاله به آن ها اشاره خواهیم کرد.روش دوم طراحی سایت بدون دانش برنامه نویسی با استفاده از قالب های آماده است که بدین صورت شما می توانید یک سایت رایگان رو خودتون طراحی کنید. در این مقاله به هردو مورد اشاره خواهیم کرد.نرم افزار طراحی سایت Dreamweaver ? Adobe Dreamweaver یک نرم افزار طراحی سایت محبوب است که به طور گسترده ای توسط توسعه دهندگان وب و طراحان استفاده می شود.این یک ویرایشگر WYSIWYG است (آنچه شما می بینید چیزی است که شما دریافت می کنید) که به این معنی است: هنگامی که شما در حال طراحی سایت در Dreamweaver هستید، تمام برنامه های موجود در پس زمینه برای شما کار می کنند.مزایای اصلی Dreamweaver عبارتند از:یک محیط دستی برای نوشتن و ویرایش HTML، جاوا اسکریپت و هر کدام از انواع دیگر کد هامحیط طراحی برای طرح بندی صفحات بصری، ویرایش تصویری و توسعه نرم افزارنمایش زنده از آنچه سند شما در مرورگر ظاهر می شود نمایش می دهد و به شما اجازه می دهد با سند ارتباط برقرار کنیدعناصر HTML را می توانید به طور مستقیم ویرایش کنید و پیش نمایش آن را فورا ببینید.نرم افزار طراحی سایت Google Web Designer ? Google Web Designer یک نرم افزار طراحی سایت پیشرفته است که به شما امکان طراحی و ساخت صفحات HTML5 و سایر محتوای وب را با استفاده از رابط بصری و کد یکپارچه می دهد.مزایای اصلی Google Web Designer عبارتند از:ایجاد محتوا با استفاده از ابزارهای طراحی، متن و اشیاء 3D، و نیز شما می توانید اشیاء و رویدادهای انیمیشن را در یک جدول زمانی ایجاد کنید.ایجاد فایل های CSS، جاوا اسکریپت، و XML و امکان تکمیل خودکار کد که باعث می شوند که کدنویسی شما راحت شده و خطا ها نیز کاهش یابند.استایل دادن به محتوا برای صفحه نمایش های با اندازه های مختلف با استفاده از ابزار طرح بندی واکنش گرا Google Web Designerسند نهایی خود را به راحتی با HTML5، CSS3 و جاوا اسکریپت انتشار دهید.استفاده از یک کتابخانه که به شما اجازه می دهد گالری تصاویر، فیلم ها، نقشه ها و سایر انواع توابع را به سایت های خود اضافه کنید.نرم افزار طراحی سایت Rapidweaver ? RapidWeaver یک نرم افزار طراحی سایت برای توسعه دهندگان مک است. کار با این نرم افزار بسیار آسان می باشد.مزایای اصلی RapidWeaver عبارتند از:به راحتی وب سایت، وبلاگ یا نمونه کارها را بسازید.ایجاد وب سایت برای تلفن همراهکد نویسی مورد نیاز نیستمناسب برای مبتدیانکد های متناسب با اصول سئونرم افزار طراحی سایت KompoZer ? یکی دیگر از ابزار های ساده برای طراحی سایت KompoZer نام دارد.مزایای اصلی KompoZer عبارتند از:امکان انتخاب رنگ ها به صورت پیشرفتهفقط یک پنجره در صفحه نمایش شما باز خواهد شد و از طریق آن می توانید چندین سند را ویرایش کنید.به راحتی می توانید استایل های خود را ایجاد کرده و به سند های خود اتصال دهید.توانایی ارتباط با اعتبار سنجی HTML W3C از داخل KompoZerنرم افزار طراحی سایت Front pageنرم افزار طراحی وب فرونت پیج یکی از ساده ترین نرم افزار های طراحی سایت است که سال های قبل نی ز خیلی پر کاربرد بوده است. ? نرم افزار طراحی سایت Coffee Cup ? یک ابزار طراحی سایت محبوب که به شما اجازه می دهد به سرعت صفحات وب سایت مورد نظر خود را ایجاد نمایید.مزایای اصلی Coffee Cup عبارتند از:استفاده از تم های وب سایت برای ساخت سریع وب سایت خودامکان سازماندهی کامل وب سایتشامل تعداد زیادی از عناصر مانند منو، پاورقی یا هدر است که در سراسر صفحات استفاده خواهند شد.تکمیل کد ها به صورت خودکارنرم افزار طراحی سایت Net Objects ? Net Objects یک نرم افزار طراحی سایت مدرن و قدرتمند است.مزایای اصلی Net Objects عبارتند از:ساخت یک وب سایت به راحتی با کشیدن و رها کردن (بدون نیاز به برنامه نویسی)فروش محصولات به صورت آنلاینادغام با تمام درگاه های پرداخت آنلاینادغام با گوگل آنالاتیککتابخانه آنلاین از قالب های رایگان، عکس ها، و...نرم افزار طراحی سایت Adobe Edge Animateنرم افزار طراحی سایت edge یکی از نرم افزارهای شرکت adobe می باشد، برای طراحی سایت با این نرم افزار نیازی با دانستن کدهای html و css نیست و می توانید با استفاده ز این نرم افزار صفحات وب به صورت متحرک و انیمیشن ایجاد کنید. ? نرم افزار طراحی سایت macaw ? Macaw نیز یکی از ابزار های طراحی وب سایت معروف به شمار می آید.مزایای اصلی Macaw عبارتند از:وب سایت ها واکنش گرا هستند.از فونت های وب استفاده کنید یا از فونت های سیستم مانند قبل استفاده نکنید.سبک های مختلفپیش نمایش به صورت ریموتمی توانید اسکریپت ها را به آسانی اضافه کنیدنرم افزار طراحی سایت Open Element ? openElement یک برنامه قدرتمند و بصری برای برنامه نویسی وب برای طراحان وب و توسعه دهندگان است.مزایای اصلی openElement عبارتند از:پشتیبانی از HTML5، CSS3، طراحی جی کوئری و واکنش گرااستفاده از قالب های آمادهنرم افزار طراحی سایت Freeway ? Freeway یک ابزار طراحی سایت محبوب برای مک است.مزایای اصلی Freeway  عبارتند از:ایجاد سریع وب سایت های واکنش گراطرح اولیه خود را به محتوای تعاملی برای وب تبدیل کنیددارای امکانات فروشگاه اینترنتیایجاد محتوا برای خبرنامه هاطراحی سایت رایگان بدون نیاز به کد نویسی با استفاده از این نرم افزارهاطراحی سایت با استفاده از cms آماده:طراحی سایت با استفاده از cms آماده و یا مدیریت محتوای آماده سورس باز است به صورتی که شما می تونید قالب مورد نظر رو برای سایت خودتون دانلود کنید و روی هاستتون آپلود کنید.خب استفاده از این نرم افزارها محاسنی داره که میشه به رایگان بودنشون اشاره کرد  بدین صورت شما می تونید طراحی سایت ارزان داشته باشید و البته معایبی هم داره که یکی از اون ایمن نبودن و اختصاصی نبودن سایت طراح شده است.نرم افزار طراحی سایت joomlajoomla یا جوملا یکی از نرم افزارهای مدیریت محتوای سایت می باشد که بسیار انعطاف پذیر است و اگر برنامه نویسی بلد باشید میتونید کد های این نرم افزار را تغییر بدید. خب این نرم افزار حسن های زیادی داره ولی از هر دید که مورد تایید باشه نمیشه از نظر امنیتی این نرم افزار ها را تایید کرد چرا که اختصاصی نیستند و احتمال خطا و باگ نیز وجود داره. ? نرم افزار طراحی سایت word pressword press یا ورد پرس نیز یکی دیگر از نرم افزار های طراحی سایت سورس باز یا مدیریت محتوای آماده است که امکانات متنوعی را برای کاربران خود تعبیه کرده است.بدین صورت که اگر شما برنامه نویسی بلد نستید می تونید با استفاده از وردپرس برای خودتون سایت طراحی کنید و این شرکت افزونه های مختلفی را برای قالب وردپرس در خدمت کاربرانش قرار داده که شما با استفاده از اون ها می تونید سایت خودتون رو تغییر بدید و امکانات بیشتری رو به سایت وردپرسیتون اضافه کنید.امیدوارم که فهرست برترین نرم افزار های طراحی سایت در سال 2018 برای شما مفید بوده باشد و بتوانید یک طراحی سایت حرفه ای انجام دهید. آیا شما از ابزارهای دیگری نیز استفاده کرده اید؟ آن را در زیر با ما در میان بگذارید.</description><category>digipatra</category><author>digipatra</author><pubDate>Wed, 01 Apr 2020 22:58:23 +0430</pubDate></item><item><title>بهترین برنامه های مدیریت محتوا (cms) سایت</title><link>https://virgool.ir/@digipatra/بهترین-برنامه-های-مدیریت-محتوا-cms-سایت-kltjhyznzepe</link><description>بهترین برنامه های مدیریت محتوا (cms) سایتدر دنیای امروزه تعداد زیادی سیستم مدیریت محتوا ی کاربردی می توان یافت که به تناسب نوع وب وسایتی که قصد طراحی آن را دارید حداقل یک موردِ در خور برای این منظور در دسترس خواهد بود. تکیه بر این واقعیت که اغلب طراحان و برنامه نویسان علاقه ای به صرف وقت جهت فراگیری تمامی سیستم های مدیریت محتوای موجود ندارند و بیشتر مایلند بر یک و یا حداکثر دو مورد تسلط یابند، نیاز به وجود سامانه ای منعطف و قدرتمند را آشکار می سازد. سامانه های معرفی شده ذیل در این قالب می گنجند. برخی از آن ها کاملا مطرح هستند(حداقل در میان طراحان) و برخی دیگر هنوز اندکی ناشناخته اند.سه جایگاه اول لیست برترین سیستم مدیریت محتوا را وردپرس، جوملا و دروپال به خود اختصاص داده است. هفت سامانه دیگر اگر چه که از محبوبیت سه سیستم ذکر شده برخوردار نیستند اما در عین حال ترکیب خوبی از قدرتمندی، انعطاف و سهولت در بکارگیری را ارائه می دهند. انتخاب یک سامانه کارآمد پس از ارزیابی نیازهای خود و کاربرانتان میسر می شود.وردپرس(WORDPRESS)رایگان، بر مبنای زبان برنامه نویسی PHP ? طی سال های گذشته مباحث زیادی در خصوص ماهیت وردپرس و امکان دسته بندی آن به عنوان یک سیستم مدیریت محتوا وجود داشت چرا که ساختار این سامانه معرف یک پلت فرم وبلاگ نویسی بود. این کمشکش ها زمانی فروکش کرد که از وردپرس در طراحی وب سایت های ساده ی چند صفحه ای بروشور مانند(که وبلاگ نیز نبودند) استفاده شد. خلق شبکه های اجتماعی پیشرفته از طریق پلاگین های این سامانه منجر به ختم این مباحث برای همیشه شد.امروزه هزاران قالب، پلاگین و ویجت به منظور بسط قابلیت های وردپرس در دسترس است. همچنین گسترش انجمن توسعه دهندگان این سامانه بدان معناست که دستیابی به آموزه ها و اطلاعات مورد نیاز جهت بهره گیری از این سیستم به راحتی فراهم شده است. راه اندازی شبکه های اجتماعی، تالارهای گفتگو(Forum) و وب سایت های تجارت الکترونیک به کمک پلاگین ها و قالب های سفارشی شده، تنها با یک بار نصب و اشتراک گذاری این سامانه امکان پذیر شده است.مزایای وردپرس:انجمن گسترده توسعه دهندگان همراه با مستندات و آموزه های قابل دستیابیایجاد هر گونه وب سایت با بهره گیری از پلاگین های رایگان و غیر رایگان و قالب های سفارشی شدهمحیط مدیریتی کاربرپسندمعایب وردپرس:پیچیدگی برای طراحی سایت های ساده و ابتداییآسیب پذیری امنیتی وب سایت های راه اندازی شده از طریق این سامانه بدون اعمال تنظیمات مورد نیازعدم وجود پشتیبانی رسمی برای این نرم افزار به گونه ای که ممکن است برخی مشکلات و سوال ها بی پاسخ باقی بماند.موارد استفاده از وردپرس:طراحی وبلاگ و یا سایت های شخصیوب سایت دانشگاه هاوب سایت های عکاسیوب سایت های معرفی مشاغلوب سایت هایی با محتوای تجارت الکترونیکجوملا(JOOMLA)رایگان، بر مبنای زبان برنامه نویسی PHP ? جوملا سامانه ای است که برای طراحی وب سایت های شرکت ها و موسسات برجسته ای چون MTV، دانشگاه هاروارد و IHOP مورد استفاده قرار گرفته است. این CMS برای طراحی سایت هایی با محتوای مدیریتی نیز مناسب است. به عنوان مثال سایت Citibank با تکیه بر این ویژگی جوملا راه اندازی شد. جوملا برای طراحی هر نوع وب سایت اعم از وب سایت های معمولی تا وب سایت های بسیار پیچیده قابل استفاده است. جوملا دارای یک انجمن بزرگ از طراحان قالب حرفه ای و توسعه دهندگان افزونه است (بالغ بر 200.000 نفر) و سهولت در دستیابی به پلاگین ها و افزونه های مورد نیاز حکایت از آن دارد که بسط قابلیت های این سامانه لزوما نیازمند کدنویسی نیست.مزایای جوملا:احراز هویت کاربران از طریق OpenID, Google و LDAPوجود بیش از 7000 افزونهانجمن گسترده توسعه دهندگان همراه با مستندات و آموزه های قابل دستیابیمعایب جوملا:عدم وجود سیستم مدیریت محتوا کاربر پسندکمبود قالب های قوی در مقایسه با سایر سیستم های مدیریت محتواپیچیدگی برای طراحی سایت های ساده و ابتداییموارد استفاده از جوملا:طراحی وبلاگ و یا سایت های شخصیوب سایت دانشگاه هاپرتال های کاربریوب سایت های خبری(مجلات، روزنامه ها و ...)وب سایت هایی با محتوای تجارت الکترونیکدروپال(DRUPAL)رایگان، بر مبنای زبان برنامه نویسی PHP ? یکی دیگر از سیستم مدیریت محتوا ی محبوب که توسط شرکت های مطرحی چون New York Observer، Popular Science، MIT، Sony Music و Fast Company بکار گرفته شده، دروپال است. ویژگی های منعطف و کاربرپسند این سامانه امکان مدیریت محتوای سایت ها را تسهیل کرده است. دروپال دارای انجمن توسعه دهندگان فعال، تعداد زیادی کانال IRC و تالارهای گفتگو و مستنداتی است که پیوسته به روز و بهینه می شوند. این مستندات دربرگیرنده تمامی نیازهای نصب و راه اندازی وب سایت ها، ماژول ها، طراحی قالب ها و دیگر مسائل مرتبط است. وجود بیش از 6000 افزونه برای این سامانه تاثیر چشمگیری در افزایش قابلیت های این CMS جهت مدیریت محتوا داشته و بدان معناست که با بکارگیری این سیستم می توان تمام تمرکز را متوجه طراحی و راه اندازی وب سایت نمود و نیاز به درگیری با کدنویسی از میان رفته است.مزایای دروپال:انجمن پشتیبانی قدرتمند متشکل از کانالهای IRC و حتی پشتیبانی زندهوجود بیش از 6000 افزونه که این سامانه را تا حد زیادی قابل توسعه کرده است.استفاده از این سامانه توسط شرکت های بزرگ که خود گواه قدرت این سامانه است.معایب دروپال :پیچیدگی برای طراحی سایت های ساده و ابتداییکمبود چشمگیر قالب های رایگان و غیررایگانپیچیدگی در ایجاد قالبموارد استفاده از دروپال:وب سایت هایی با محتوای ذخیره سازی فایل هاشبکه های اجتماعیپرتال های خبریوبلاگ های اجتماعیوب سایت هایی جهت اشتراک گذاری ویدئو و عکساکسپرشن انجین(EXPRESSIONENGINE)نیازمند لایسنس، بر مبنای زبان برنامه نویسی PHP ? این سامانه ترکیب جالبی از نرم افزارهای غیر رایگان و متن باز است. ساختار این سیستم مدیریت محتوا بر پایه CodeIgniter می باشد که خود یک فرم ورک متن باز است. جنبه ی غیر رایگان این سامانه از این واقعیت نشات می گیرد که برنامه نویسانی متعهد همراه با پشتیبانی فنی و انحصاری در پس این سیستم وجود دارند.وب سایت های مطرحی که به کمک این سیستم راه اندازی شده اند عبارت است از AIX Life، the Canon Ixus site و LivingSocial Adventures.کستردگی پلاگین و ماژول ها در این CMS بسیار محدود است به طوری که تنها 22 ماژول و 100 پلاگین در دسترس است. اما با همین تعداد اندک، دانش نامه ها، تالارهای گفتگو ، سایت های مدیریت کاربران، تجارت الکترونیک، سایت های آمارگیری و.... بیشماری ایجاد شده است. چنانچه از طریق وب سایت رسمی امکان یافتن پلاگین مورد نظر فراهم نباشد، انجمن هایی برای ارائه ی پلاگین متناسب با نیاز شما در نظر گرفته شده است.مزایای اکسپرشن انجین:ارائه لایسنستمرکز بر امنیت(این در حالی است که سامانه مذکور با هیچگونه نقص امنیتی جدی مواجه نشده است)عدم اعمال محدودیت در طراحی سایت هامعایب اکسپرشن انجین:هزینه بالا بخصوص برای طراحی سایت های تجاریپیچیدگی برای طراحی سایت های ساده و ابتداییعدم وجود دمو جهت ارزیابی سامانه پیش از خریدتکست پترن(TEXTPATTERN)رایگان، بر مبنای زبان برنامه نویسی PHP ? تکست پترن یکی از سیستم های نادیده گرفته شده در بازار CMS هاست. این سامانه بسیار منعطف و کاربرپسند است که به راحتی قابلیت سفارشی سازی دارد. از این CMS برای تولید تگ های برنامه نویسی استفاده می شود که به بازیابی و مدیریت محتوا کمک شایانی کرده است. این سامانه براحتی متون خام و بدون فرمت را در مقالات تبدیل به متون XHTML کرده و میزان کارپسندی مطالب را به طور چشمگیری افزایش داده است.گستردگی قالب های این سامانه به اندازه وردپرس، جوملا و یا دروپال نیست و تنها بالغ بر 120 قالب جهت استفاده کاربران در دسترس است. در عین حال چندین قالب مدیریتی نیز برای مدیریت محتوا توسط برنامه نویسان ارائه شده است.مزایای تکست پترن:اینترفیس بسیار سادهمناسب برای طراحی هر نوع سایت همراه با ارائه آموزه های لازممستندات بسیار مناسبمعایب تکست پترن:کاربران اندکپلاگین های محدود نسبت به دیگر CMS هاکمبود قالب های قویموارد استفاده از تکست پترن:وب سایت های خبریوب سایت های آموزشیوب سایت هایی با محتوای معرفی محصولاتپرتال های سادهوب سایت هایی جهت دانلود فایل هاکانتائو(CONTAO)- با نام رسمی TYPOLIGHTرایگان، بر مبنای زبان برنامه نویسی PHP ? این سامانه با استفاده از AJAX و قابلیت های Web 2 سبب شده که کاربران زیادی از استفاده آن لذت ببرند. ساختار سیستم استاندارد آن امنیت بالایی را ارائه می‌دهد علاوه‌ بر این، سیستم می‌تواند به صورت انعطاف‌پذیر و کم هزینه گسترش یابد. مدیریت آسان کاربران و قوانین، سرویس بروزرسانی، چارچوب پیشرفته و بسیاری از افزونه‌های داخلی موجود (اخبار، تقویم، فرم‌ها و ....) کانتائو را به عنوان یکی از محبوب ترین سیستم‌های مدیریت محتوای متن‌باز کرده شناسانده است.قالب های کمی برای این سامانه طراحی شده است که البته با توجه به پشتیبانی این CMS از فرم ورک های CSS نگرانی جدی برای طراحان در پی نخواهد داشت.مزایای کانتائو:عدم محدودیت در طراحی وب سایتسهولت در یادگیری برای طراحانماژول های قدرتمندمعایب کانتائو:عدم وجود قالبعدم توسعه بخش مدیریتی این سیستم از طریق ادمیناستفاده از این سامانه در طراحی سایت های کوچک به دلیل توسعه نیافتگی بخش مدیریتی ادمینسیلوراستریپ(SILVERSTRIPE)رایگان، بر مبنای زبان برنامه نویسی PHP ? این سامانه یک سیستم مدیریت متن باز و مناسب طراحانی است که به کدنویسی علاقه دارند. با توجه به وجود دستعورالعمل ها، آموزه ها، وبلاگ ها و تالارهای گفتگو بیشمار، این سیستم برای برنامه نویسان مبتدی نیز قابل استفاده است. با توجه به اینکه کدهای برنامه نویسی مشتق از ویژگی های فریم ورک Sapphire می باشند بنابراین برنامه نویسان می توانند به راحتی از هر یک از کدهای HTML و یا CSS برای طراحی وب سایت خود بهره گیرند. یکی دیگر از ویژگی های این سامانه مدیریت صفحات چندگانه جهت پاسخگویی هر چه کاملتر به نیازهای کاربران می باشد. همچنین این CMS از ابزارهای نگارشی قدرتمندی برخوردار است که طراحان را قادر می سازد از طریق این ابزارها، تنظیمات جداگانه ای با سطوح دسترسی مختلف برای بخش های منتشر شده و یا منتشر نشده وب سایت تعریف کرده و محتوای آن را مدیریت نمایند. این ویژگی در مقابل داشتن چندین ویرایشگر و یا ویراستاری که تنها نیاز است بخش خاصی را مدیریت نماید، ویژگی کاملا برجسته ای است.این سامانه بالغ بر 350.000 بار دانلود شده و جامعه طراحان عظیمی را در برمیگیرد. سازمان پشتیبانی این CMS جهت بروزرسانی و بهینه سازی کدهای مربوطه برای پاسخگویی و رفع هر چه سریعتر مشکلات احتمالی در دسترس بوده و شاهد این امر وجود این سازمان ها در بیش از سی کشور دنیاست که پشتیبانی گسترده و جامع این CMS را محرز می نماید.مزایای سیلوراستریپ :سهولت در سیستم مدیریتآزادی در استفاده از کدهای CSS و یا HTML بر مبنای نیاز طراحی وب سایتتوسعه یافتگی بر اساس استاندارهای موجودمعایب سیلوراستریپ :نیاز به آموزش و یادگیری جهت استفاده از این CMSمحدودیت در ماژول/افزونه (حدودا 50 عدد)کمبود قالب های قویآمبراکو(UMBRACO)رایگان، بر مبنای زبان برنامه نویسی .NET ? این سامانه با امکان مدیریت همه جانبه و تمرکز بر استاندارهای وب و با استفاده از سیستم قالب بندی باز و توانایی ساخت دستورالعمل ها یکی از سیستم های مدیریت محتوای محبوب است. همچنین به راحتی می توان محتوای وب سایت های طراحی شده با Flash و یا Silverlight را در سایت های مدیریت شده با این سامانه گنجاند. از جمله وب سایت های طراحی شده با این سامانه می توان به Heinz و ABBA اشاره کرد.از دیدگاه مدیریتی این سامانه با ارائه نمودار درختی، این امکان را برای کاربران فراهم آورده است که اطلاعات مورد نیاز را در مورد وب سایت به دست آورده و نگاهی اجمالی به آن بیندازند.این CMS قابلیت پشتیبانی از نسخه های متعدد، نمایش زمان بندی شده و پیش نمایش صفحات را دارد. از دیگر ویژگی های بارز این سامانه می توان به پشتیبانی این سیستم از ورد(Word) اشاره کرد و این خود دلیل محبوبیت این سامانه نزد کاربران مایکروسافت آفیس است.مدیریت سمت ادمین برای طراحان و برنامه نویسان در این سامانه از طریق اپلیکیشن های سفارشی شده و پلت فرم متن باز API فراهم شده است.مزایای آمبراکو:وجود پشتیبانی به دو صورت رایگان و غیر رایگانبسیار قدرتمند و منعطف برای طراحی وب سایت ها و شبکه های داخلیپلت فرم متن باز APIمعایب آمبراکو:افزونه های اولیه غیر رایگانعدم وجود دمو جهت ارزیابی سامانه پیش از خریدعدم امکان استفاده از قالب های طراحی شده سمت کاربرموارد استفاده از آمبراکو:مجلات و روزنامه هاوب سایت هایی با محتوای تجارت الکترونیکوب سایت های دولتیوبلاگ های شخصیوب سایت های مراکز آموزشکانسرت 5(concrete5)رایگان، بر مبنای زبان برنامه نویسی PHP ? این سامانه در حقیقت یک سیستم مدیریت محتوا نیست بلکه می توان آن را در فهرست فریم ورک ها گنجاند. این روزها طراحی وب سایت ها کار ساده ای است و می تواند طی مراحل مختلفی صورت گیرد. می توان سایتی را با یک قالب طراحی کرد و نیازی به هیچ کدنویسی نداشت و یا می توان کدهای مورد نیاز را از طریق CSS و یا HTML تولید کرد و وب سایت را به کمک آن ها راه اندازی نمود. قالب های آماده ی بسیاری در دسترس است اگر که شما مشکلی با زبان برنامه نویسی PHP نداشته باشید.یکی از ویژگی های شاخص این سامانه سهولت در ویرایش متون و کارپسندی آن است که برای کابران بسیار مبتدی نیز قابل استفاده است.با تکیه بر گزارشات ارائه شده در سال 2010 در رابطه با سیستم های مدیریت محتوای متن باز، انجمن برنامه نویسانی که از این سامانه بهره برده اند، افزایش قابل توجهی داشته است. برهمین مبنا پاسخ هر گونه سوال از طریق سیستم تیکتینگ و یا با استفاده از تالارهای گفتگو براحتی قابل دستیابی است. از این روست که کاربرپسندی و پشتیبانی قوی، این سامانه را میان طراحان مبتدی بسیار محبوب کرده است.مزایای کانسرت 5 :تبدیل وب سایت های نوشته شده با کدهای HTML ابتدایی به وب سایت طراحی شده با کانسرت در لحظهانجمن برنامه نویسان فعال و گستردهارائه سرویس میزبانی شامل پیشیبانی در این زمینهمعایب کانسرت 5 :غیر رایگان بودن پلاگین های قوی و مفیدغیر رایگان بودن اکثر قالب هاپشیبانی غیر رایگان در صورت عدم تهیه سرویس میزبانی از شرکت ارائه دهنده این سامانهکاشی سی ام اس(CUSHYCMS)رایگان، نسخه حرفه ای 28 دلار در ماه به تناسب ویژگی ها – میزبانی شده ? این سیستم تنها سیستمی است که میزبانی شده است. نسخه رایگان این CMS در برگیرنده تعداد نامحدودی وب سایت، صفحات و ویرایشگرهاست با این ویژگی که اجازه استفاده از نام دامنه و لوگوی شخصیتان از شما سلب شده است. چنانچه این مسئله برایتان اهمیتی ندارند، نسخه رایگان پیشنهاد ویژه ای خواهد بود در غیر اینصورت می توانید با پرداخت هزینه لایسنس نسخه حرفه ای نسبت به نگهداری برند و نام خود اقدام نمایید.آنچه این سامانه را از دیگر سامانه ها متمایز کرده است سهولت در ویراستاری برای کاربران است. شما سایت خود را طراحی کرده و سپس آن را به این CMS اضافه می کنید. سپس دسترسی های لازم را جهت وایریش بخش دلخواه به کاربرانتان می دهید.با توجه به ماهیت این CMS پلاگین و یا قالب از پیش تعیین شده ای برای این سامانه در نظر گرفته نشده است. برای آن دسته از طراحان که عادت به کار با CMS ندارند و یا آن دسته که سایت هایی ساده طراحی کرده اند و نیازی به ویژگی های گسترده CMS ندارند ولی مایلند که کاربرانشان امکان ویرایش برخی از قسمت های سایت را داشته باشند، این سامانه یک پیشنهاد ویژه است.مزایای کاشی سی ام اس:سهولت بسیار در ویرایش و مدیریت محتوانسخه های رایگان مناسب برای عموم کاربرانسسهولت در آغاز به کارمعایب کاشی سی ام اس:هزینه قابل توجه در صورت بکارگیری نسخه های غیر رایگان تنها در یک وب سایتپشتیبانی از طریق ایمیل تنها در نسخه های غیر رایگانبسار ابتدایی برای طراحی سایت های بزرگ</description><category>digipatra</category><author>digipatra</author><pubDate>Wed, 01 Apr 2020 22:56:41 +0430</pubDate></item><item><title>بهترین کامپایلر (ide) برای ریکت (react js)</title><link>https://virgool.ir/@digipatra/بهترین-کامپایلر-ide-برای-ریکت-react-js-a0skfnllrumk</link><description>بهترین کامپایلر (ide) برای ریکت (react js)مقدمه‌ای بر بهترین ویرایشگرها برای react jsویرایشگرهای react js در واقع سعی بر این دارند که شما با داشتن یک رابط کاربری عالی در دنیای مجازی هر روز موقعیت بهتری نسبت به قبل بیابید. رابط کاربری با نقش خود به‌ عنوان عاملی که مابین سیستم‌ها و کاربران تعامل برقرار می‌کند، در موبایل‌ها و تمامی کامپیوترها دیده می‌شود. در مورد بهترین ویرایشگرها برای react js react js می توانید اطلاعات بیشتری در وب سایت مکتب خونه بیابید.این رابط کاربری مانند react js است که کمک می‌کند شما از طریوب ساق اپلیکیشن گوشی همراه خود مراحلی را طی کنید و بتوانید که بدون داشتن یک رابط کاربری مناسب، از طریق سایت فروشگاهی خود اقدام به فروش کالاهایتان کنید. با این ویرایشگر کاربران می توانند به‌راحتی کالای مورد نظر خود را بیابند و می توانند با یک کلیک مشخصات آن را بخوانند و انتخاب کنند. اگر به سبد خرید آن‌ها اضافه نشود و روش تحویل و پرداخت وجه را انتخاب نکنند، سفارشی نمی‌توانند بدهند، باید به درگاه بانک وارد شده وجه آن را پرداخت نمایند. در نهایت سیستم شما برایتان درآمدزایی خواهد کرد. ? به گوشی همراه خود نگاهی بیندازید. گوشی شما توسط سیستم عاملی پشتیبانی می‌شود، رابط کاربری آن سیستم عامل است که حتی مراحلی را که باید طی کنید را در نظر می‌گیرد تا مخاطب جدیدی را به لیست مخاطبان خود اضافه کنید.برنامه‌نویسان حرفه‌ای به‌خوبی می‌دانند؛باید بتوانند با کمک رابط کاربری ظاهر و گرافیک جذابی را درنظر بگیرند تا کاربر را جذب نماید.در عین حال باید سرعت و کارایی را هم درنظر بگریند تا نیازهای کاربران را تامین کند.همچنین باید بتوانند دسترسی کاربران را سرعت بخشند، کاربران عاشق سیستم‌هایی هستند که در یک چشم برهم‌زدن کار خود را به بهترین نحو ممکن بتوانند انجام دهند. لذا در این راستا رابط کاربری مانند react js متولد شده است.react js چیست و چه مزایایی دارد؟اگر سراغ خود react js نرویم شاید بتواند گفت مقاله ناقص می‌ماند. react js یک فریم ورک یا چهارچوب نرم‌افزاری است؛ کتابخانه‌ای که به برنامه‌نویس کمک می‌کند با سرعت بیشتری و با کدهای کمتری برنامه موردنظر خود را بنویسد. کتابخانه مذکور ابتدا کار خود را فیس‌بوک شروع کرد سپس به اینستاگرام هم پا گذاشت. همچنین می توانید برای آشنایی بیشتر به مقاله ی React js چیست و چه کاربردی دارد؟  مراجعه کنید.react js در الگوی طراحی Model View Controller یا mvc صرفا به بخش View پرداخته است. این بدین معنی می‌باشد که تنها مدل را که کنترلگر ایجاد کرده است دریافت می‌کند و به شکلی که درنظر گرفته شده برای کاربر به نمایش می‌گذارد. البته باید خاطر نشان کرد که برای طراحی سایت‌هایی که تک صفحه‌ای و یا HTML هستند، می توانید از react js استفاده کنید.react js به‌عنوان کتابخانه جاوا اسکریپت که زبان برنامه‌نویسی است و با داینامیک شدن صفحات سرکار دارد و در محل قرارگیری react js کدهای HTML درنظر گرفته شده است. react js به علت سادگی آموزش، توانسته است محبوب و همه‌گیر شود و همین موضوع است که ما را بر آن داشت به بهترین ویرایشگرها برای react js بپردازیم. ? کدهای react jsکدهای react js کمک می‌کنند کدهای react js با کارایی بیشتری نوشته شوند؛ اما باید قبل از نام بردن بهترین ویرایشگرها به عرض شما برسانیم ما با دو نوع ویرایشگر برای react js روبرو هستیم IDE و TEXT EDITOR که لازم است به ذکر توضیحاتی درباره هر یک از آنها بپردازیم.ابتدا به سراغ Integrated Development Environment که به اختصار IDE نامیده می‌شود و برای هر زبان برنامه‌نویس جداست می‌رویم. محیطی که در آن هرچه برنامه‌نویس نیاز دارد، در اختیار او قرار می‌گیرد.ویدیو پییشنهادی :  فریم‌ورک React JS چیست&lt;br/&gt; ? اگر بخواهیم به طور کلی امکاناتی که یک IDE خوب در اختیار برنامه‌نویس قرار میدهد تا به‌عنوان یک ویرایشگر react js مطرح باشد را بگوییم لازم است به موارد زیر اشاره کنیم؛خطاهای کد باید مشخص شوند.توانایی مرتب کردن کدها وجود داشته باشد.رنگ بندی خوبی را محیط داشته باشد.GIT در سایت‌های گیت هاب و گیت لب کمک می‌کند که در صورتی که فایل‌ها در برنامه‌نویسی افزایش یابند، یا اگر کار برنامه‌نویسی تیمی انجام می شود، مشکلات پاک‌کردن کد اشتباه و یا یافتن کد در تاریخ خاص و یا اعلام تغییرات کدها اعضای تیم به هم وجود نداشته باشد. یک IDE خوب امکان ارتباط با سرویس GIT را می‌دهد. محیط IDE باید امکان اتصال به FTP  هاست را بدهد تا بتوان کدهای سرویس آنلاین را تغییر داد. ? معرفی چند IDE به‌عنوان بهترین ویرایشگرهابعد از ذکر مشخصات IDF خوب برای react js در ذیل به معرفی بهترین‌ها در این زمینه می‌پردازیم امید است مفید افتد.Visual Studio CodeVisual Studio Code یک IDE رایگان است که برای توسعه و اشکال‌زدایی برنامه‌های وب ساخته شده است. در این ویرایشگر کنترل و انتقال Git درهم ادغام شده‌اند. شما با ادیتوری روبرو هستید که به راحتی برروی سیستم عامل‌های مرسومی چون ویندوز و لینوکس و البته مک قابل نصب است.این ادیتور یکی از ویرایشگرهای react js محسوب می‌شود. زیرا پلتفرمی منبع باز است. منبع باز بودن آن به معنی دادن اجازه به کاربران برای مشاهده و ویرایش کدها است. دلیل آن هم این است که هرکس بتواند نسخه خاص را داشته باشد.مزایای CODE VS به همین موارد محدود نیست. شما ویرایشگر سبکی را در اختیار خواهید داشت که با زبان‌های برنامه‌نویسی متنوع و معمولی چون جاوا، پایتون و سی پلاس پلاس و… پشتیبانی می‌شود. ? React IDEبا React IDE به‌عنوان اولین IDE اختصاصی برای توسعه برنامه وب react ادامه می‌دهیم. این ویرایشگر یک برنامه پلتفرم کراس دسکتاپی است. بدین معنی که در سیستم عامل‌های مختلف قابل اجرا است. این یرایشگر شبیه‌ساز سفارشی را ارائه می‌دهد که ساخت ابزار و پیکربندی سرور را غیر ضروری می‌نماید. این ID به گامی از توسعه دست پیدا می‌کند که با باز کردن یک فایل بلافاصله پروژه در مرورگر ارائه می‌شود.با React IDE توسعه‌دهندگان می‌توانند به‌سادگی به یک فایل React JSX دست پیدا کنند، در حالی‌که هنوز از قدرت React بهره می‌برند. ? Webstormنوبت به Webstorm می‌رسد. این ویرایشگر عالی جاوا اسکریپت توسط IntelliJ تهیه شده و برای کدنویسی برنامه‌های react انتخاب عالی محسوب می‌گردد.این IDE از یک پشتیبانی داخلی برای react خارج از چهارچوب معمول برخوردار است تا ما بتوانیم از روز اول شروع به توسعه برنامه react کنیم. این ویرایشگر به شما کمک می‌کند به لطف کد هوشمند کامل، تشخیص خطای on-the-fly، پیمایش قدرتمند کدنویسی عالی داشته باشید.IDE پشتیبانی درجه یکی را از JavaScript، HTML، Node.js و CSS و همچنین جانشینان مدرن آنها فراهم می‌کند. ادیتور Webstorm در زمینه پشتیبانی فریم ورک‌ها هم خوب عمل می‌کند Meteor، React، Angular JS و…. از مواردی هستند که پشتیبانی می‌شوند.وقتی می‌گوییم Webstorm یکی از بهترین ویرایشگرها برای react js است زیاده‌روی نمی‌کنیم؛ این ادیتور در اشکال‌زدایی برای جاوا اسکریپت و Node.js واقعا قدرتمند عمل می‌کند. ? با کمک جاسوسی جاوا اسکریپت شما می‌توانید کدهای خود را به خوبی ردیابی و بررسی کنید. در این IDE همه چیز درست است می‌توانید با KARMA یا MOCHA تست کنید.بعداز معرفی چند IDE خوب مبحث ویرایشگرهای مناسب برای react js را با معرفی ویرایشگرهای متنی ادامه خواهیم داد.Text Editorمعرفی چند Text Editor شامل بهترین Text Editor ها نیز می‌شود. ویرایشگرهای متنی به‌عنوان یک نرم‌افزار سبک و سریع به‌صورت پیش‌فرض بوده و با اضافه نمودن امکانات مختلف به شما کمک می‌کنند. این نرم‌افزار برخلاف IDE، فضای کمی اشغال می‌کنند و اکثرا به‌صورت رایگان در اختیار برنامه‌نویس قرار می‌گیرند.Atom editorاتم با استفاده از گیت هاب توسعه یافته، محیطی که قابلیت تنظیم بسیار بالایی دارد را در کنار سهولت نصب آن را برای react js قرار داده است.Atom editor به‌عنوان ویرایشگری شناخته می‌شود که در عین مدرن بودن قابل دسترس است. می‌توانید برای تحقق هر هدفی آن را به‌طور موثری شخصی‌سازی نمایید. شما نمی توانید دست به پیکربندی فایل بزنید. همچنان کار بدون نقص وجود ندارد و قطعا این ادیتور قابل هک است. ? sublime text 3sublime text 3، ویرایشگری پیشرفته برای کد نویسی، نشانه‌گذاری و نثر است. مطمئن باشید شما رابط کاربری جذاب با ویژگی‌های فوق‌العاده و عملکرد شگفت‌انگیز را دوست خواهید داشت.این ویرایشگر احتمالا یکی از گسترده‌ترین ویرایشگرهای کد است که می‌توانید به‌وسیله آن فایل‌ها را درکنار هم و یا دو مکان را در یک فایل ویرایش کنید. همچنین می‌توانید با هر تعداد ردیف و ستون که می‌خواهید کار ادیت را انجام دهید.ویدیو پییشنهادی : آموزش فریم‎ورک Angular 2 ? شما می‌توانید به روش مشابه Goto Anything مابین پروژه‌ها ارتباط فوری بدون هیچ کاستی برقرار کنید. بدانید تمام تغییرات شما هر زمان که پروژه باز شود بازیابی خواهند شد. ? EmacsEmacs یک ویرایشگر متن قدرتمند است که نویسنده را قادر به دستیابی به آنچه مورد نظر اوست، می‌کند. این ویرایشگر مجموعه زبان‌های برنامه‌نویسی و سایر ویرایشگرهای متنی را پشتیبانی می‌نماید.Notepad++اگر شما مستقیما با جاوا اسکریپت، HTML و CSS کار می‌کنید بدانید  Notepad++ به‌عنوان یک ویرایشگر رایگان از مجموعه بهترین ویرایشگرها برای react js می‌تواند کارهای زیادی مانند ویرایشگرهای فانتزی انجام دهد.جالب است بدانید افزونه‌ها می‌توانند عملکرد این ویرایشگرها را تا حد دیوانه‌واری بهبود بخشند. از جمله افزونه‌هایی که می‌توان اشاره کرد به ذخیره خودکار متون، افزونه مقایسه و افزونه سفارشی کردن نوار ابزار اشاره کرد. ? BracketsBrackets یک ویرایشگر متنی سبک، قدرتمند و عالی است. این برنامه ابزار بصری را با ویرایشگر می‌آمیزد تا بدون کاستن از خلاقیتتان هرچه‌قدر می‌خواهید کمک دریافت کنید. Brackets یک پروژه منبع باز هست که توسط جامعه فعال و پرشوری حمایت میشود که از کدنویسی لذت خواهید برد. این ویرایشگر بر ابزار بصری و پشتیبانی از پیش‌ پردازنده تمرکز می‌کند. Brackets یک ویرایشگر متن مدرن است که طراحی آن را در مرورگر آسان می‌نماید. این ویرایشگر متن را برای برنامه‌نویسان پیشرفته ساخته‌اند.</description><category>digipatra</category><author>digipatra</author><pubDate>Wed, 01 Apr 2020 22:35:19 +0430</pubDate></item><item><title>بهترین کامپایلر ide برای جاوا java</title><link>https://virgool.ir/@digipatra/بهترین-کامپایلر-ide-برای-جاوا-java-e299znlejjd9</link><description>بهترین کامپایلر ide برای جاوا javaجاوا Java یک زبان برنامه نویسی کامپیوتری همه منظوره است که بر پایه کلاس‌ و شی گرا است و طوری طراحی شده است که تا آنجا که ممکن است وابستگی اجرایی کمی به سایر نرم افزارها داشته باشد. خالقان آن قصد داشته اند تا نرم افزار به برنامه نویسان آپ‌ها امکان دهد تا ” یک‌بار برنامه را بنویسند و همه جا آن را اجرا کنند“.با توجه به همه این خصوصیات این زبان برنامه نویسی زبانی است که یادگیری آن برای برنامه نویسان و توسعه دهندگان آپ‌های اندرویدی مفید است. از این رو در ادامه با قوی ترین IDE های جاوا در سال ۲۰۱۹ آشنا می شویم.(دوره اموزش جاوا ) ? ۱.بلو جی (BlueJ)نرم‌افزار BlueJ امکان آموزش ویژگی‌ها و قابلیت‌های محیط برنامه نویسی جاوا را برای شما فراهم می‌سازد. این برنامه کاربردی، یک ابزار ویرایشگر، کامپایلر، ماشین مجازی و ابزار اشکال زدایی را در خود جای می‌دهد. رابط کاربری نرم‌افزار BlueJ از پنجره‌ای استاندارد با ساختاری ساده تشکیل شده است. این نرم افزار توسط تیم طراحی و پیاده ساز در دانشگاه Deakin شهر ملبورن استرالیا و هم چنین دانشگاه کنت (Kent) شهر کانتربری انگلستان ایجاد شده است.سیستم عامل : لینوکس/مک/ویندوز۲.کدنوی (Codenvy)کدنوی (Codenvy) یک IDE تجاری برای جاوا است که توسط تیم ایکلیپس (Eclipse) توسعه داده شده است،مجموعا سه نسخه از این نرم افزار توسعه داده شده است که عبارت‌اند از developer, enterprise,team که تیم ها می توانید نسخه مورد نیاز خود را از بین این سه نسخه انتخاب کنند.نرم افزار Codenvy یک فضای کاری مبتنی بر فضای ابری است که علاوه بر نوشتن کد جاوا با استفاده از ویرایشگر مبتنی بر مرورگر ارائه شده توسط Codenvy همچنین برنامه نویسان جاوا می توانند از ویژگی های قدرتمند مانند تکمیل کد، refactoring و برجسته سازی یا (syntax highlighting) بهره‌مند شوند.سیستم عامل : لینوکس/مک/ویندوز/سولاریس۳.نت بینز (NetBeans)این IDE را برنامه نویسان Java ، C/C++ ، PHP و HTML5 در سیستم عامل‌های Windows ، OS ، Solaris و Linux استفاده می‌کنند. نرم‌ افزار‌های ایجاد‌ شده توسط NetBeans بر پایه ماژول نوشته شده‌اند و آنها می‌توانند توسط کد نویسان مستقل گسترش داده شوند. این نرم افزار یک پروژه منبع باز ( open source ) است و به افراد یا شرکت‌ها اجازه می‌دهد تا در توسعه آن شریک شوند به علاوه آن ‌که می‌توانند مجانی از آن استفاده کنند.سیستم عامل : لینوکس/مک/ویندوز/سولاریس۴.ایکلیپس (Eclipse)یکی از محبوب‌ترین IDE ها برای جاوا است که می‌تواند از طریق یک مرورگر وب و در هر جا که شما هستید مورد استفاده قرار گیرد. یکی از ویژگی‌های به شدت مورد توجه آن ، خصوصیت کامل شدن خودکار کد (autocompletion ) آن است، که باعث می‌شود زمان کم‌تری صرف نوشتن برنامه شود و برنامه‌نویسان کمتر به اسناد API مراجعه کنند. همچون NetBeans این نرم افزار نیز منبع باز است. بنابراین کاربران می‌توانند با ایجاد plug-in های خود در سفارشی سازی آن به منظور رفع نیازهای خود اقدام کنند.سیستم عامل : لینوکس/مک/ویندوز/سولاریس۵.نرم افزار (IntelliJ)نرم افزار JetBrains IntelliJ IDEA يكي از هوشمندترين مترجم ها و محيط هاي توليد نرم افزار (IDE) ويژه زبان جاوا است که از HTML / XHTML, XML / XSL, CSS, Ruby, و jаvascript و همچنین مدرن ترين فناوري ها و چارچوب هاي مهم مانند Spring و Hibernate پشتیبانی میکند.همچنین JetBrains IntelliJ IDEA پشتیبانی از ساختارهای Rails و GWT با ارائه یک محیط خوب با رابط کاربری آسان به شما در برنامه نویسی کمک میکند. به کمک نرم افزار JetBrains IntelliJ IDEA و دارا بودن کامپایلرهای متعدد و ابزارهای ویرایشی قدرتمند قادرید برنامه های تحت جاوا را در کمترین زمان کدنویسی کنید .سیستم عامل : لینوکس/مک/ویندوز۶.نرم افزار (GreenFoot)نرم افزار GreenFoot برنامه ای که با محیطی توسعه یافته و یکپارچه برای ساخت بازی ها و همچنین شبیه سازی زبان برنامه نویسی جاوا بکار می رود.نرم افزار Greenfoot دارای دموهای از پیش ساخته و مستندات جامع گسترده ای ارائه می گردد و به کاربران کمک می کند تا سریعا با نرم افزار ارتباط برقرار کنند.رابط کاربری IDE کامل که شامل ویژگی های مدیریت پروژه، تکمیل خودکار، نحو برجسته و سایر ابزارهای رایج IDE ها می باشد.دارای رابط کاربری ساده و استفاده آسان برای کاربران است و به شما اجازه می دهد تا به هر دو صورت آنلاین و آفلاین منتشر کنید و توسط هزاران نفر در سراسر جهان مورد استفاده قرار می گیرد.امکان دارد که شما از این برنامه فقط برای طراحی یک بازی جذاب و زیبا جاوا و قرار دادن آن در وبلاگ یا وب سایت استفاده کنید اما این برنامه می تواند در زمینه یادگیری برنامه نویسی جاوا و آموزش آن مورد استفاده قرار بگیرد.سیستم عامل : لینوکس/مک/ویندوز/سولاریس</description><category>digipatra</category><author>digipatra</author><pubDate>Wed, 01 Apr 2020 22:33:23 +0430</pubDate></item><item><title>بهترین کامپایلر IDE برای پایتون</title><link>https://virgool.ir/@digipatra/بهترین-کامپایلر-ide-برای-پایتون-kgcd1gpoxfqx</link><description>بهترین کامپایلر IDE برای پایتوناگر قصد دارید یک برنامه نویس حرفه ای پایتون شوید پس باید از یک ویرایشگر متن حرفه ای نیز استفاده کنید. چرا که با ویرایشگر Notepad ویندوز نمیتوانید برنامه های خود را به خوبی نوشته یا آنها را اشکال زدایی (Debugging) کنید. البته باید بدانید که برنامه نویس ها از چیزی فراتر از یک ویرایشگر متن برای نوشتن نرم افزار های خود استفاده میکنند و آنهم چیزی نیست با نام IDE یا Integrated Development Environmentاصلی ترین مزیت استفاده از IDE جلوگیری از اتلاف زمان برنامه نویس میباشد. همانطور که میدانید زمانیکه در ویرایشگر متن Notepad چیزی را تایپ میکنید، Notepad از قوانین و قواعد خاصی پشتیبانی نمیکند اما IDE ها به شما این اجازه را میدهند تا آنچه را که تایپ میکنید را با قواعد مربوط به خودش مشاهده کنید. مثلا قواعد زبان برنامه نویسی که تایپ میکنید به صورت رنگی باشد که به اصطلاح به این ویژگی Syntax Colored گفته میشود.از دیگر مزیت های IDE میتوان به ویژگی Code Completion اشاره نمود. با استفاده از ویژگی Code Completion سرعت شما در تایپ برنامه ای که مینویسد تا چندین برابر افزایش پیدا میکند چرا که با نوشتن چند حرف از یک Statement نسخه کامل آن برای شما به نمایش گذاشته میشود.بهترین IDE برای Python کدام است؟توسعه دهندگان نرم افزار IDE های زیادی را نوشته اند که هر یک از آنها بسته به نیاز برنامه نویس انتخاب میشود مثلا اگر شما بخواهید با زبان C# یا C++ کار کنید بهترین گزینه برای شما Microsoft Visual Studio میباشد چرا که جدا از ویژگیهای مربوط به نوشتن متن برنامه نویسی دارای یک Compiler برای Compile کردن آنچه که نوشته شده نیز هست.برای توسعه دهندگان Python نیز انتخاب های متعددی وجود دارد که در ادامه به معرفی بعضی از آنها میپردازم:نرم افزار PyCharmبه جرات میتوان گفت بهترین و محبوب ترین IDE در بین برنامه نویس های پایتون نرم افزار PyCharm میباشد. نرم افزار Pycharm یک IDE کامل و هوشمند برای پایتون است که از ویژگیهای مهم آن میتوان به Intelligent Code Editor و Debugging, Testing and Profiling اشاره نمود. ? شما میتوانید از نرم افزار PyCharm در سیستم عامل های Windows و Linux و Macintosh استفاده کنید البته باید بدانید که PyCharm به صورت رایگان ارائه نمیشود اما نسخه کرک شده آن نیز وجود دارد. برای دانلود نرم افزار PyCharm به سایت jetbrains.com مراجعه کنید. برای دانلود نسخه کرک شده PyCharm به سایت Soft98.ir مراجعه کنید.نرم افزار PyDevاز دیگر IDE های محبوب Python میتوان به PyDev اشاره نمود. نرم افزار PyDev یک IDE رایگان و Open Source است که متعلق به Eclipse میباشد. از ویژگیهای PyDev میتوان به همبستگی با Django و Code Completion و Auto Import و … اشاره نمود. ? برای دانلود و نصب نرم افزار PyDev به سایت http://www.pydev.org مراجعه کنید و نسخه مربوطه به سیستم عامل خود را دانلود و نصب کنید.نرم افزار Visual Studio Codeآخرین نرم افزای که میخواهم به شما معرفی کنم همان است که خودم از آن برای یادگیری Python استفاده میکنم. نرم افزار Visual Studio Code یک IDE نمیباشد اما هر آنچه که یک برنامه نویس به آن نیاز دارد را مهیا میکند. از ویژگیهای این نرم افزار میتوان به سادگی و سبک بودن آن در کنار پشتیبانی از اکثر زبان های برنامه نویسی اشاره نمود. برای توسعه پایتون با نرم افزار Visual Studio Code کافیست تا Extension مربوط به Python را نصب کنید تا ویژگیهای Code Completion و Syntax Colored برای شما فعال شود. ? شما میتوانید نرم افزار Visual Studio Code را در هر سیستم عاملی از جمله Windows و Linux و یا Macintosh نصب و استفاده کنید. برای دانلود VSC به سایت https://code.visualstudio.com مراجعه کنید.</description><category>digipatra</category><author>digipatra</author><pubDate>Wed, 01 Apr 2020 21:20:59 +0430</pubDate></item><item><title>زبان برنامه نویسی PHP چیست؟</title><link>https://virgool.ir/@digipatra/زبان-برنامه-نویسی-php-چیست-jimqwrhazocd</link><description>زبان برنامه نویسی PHP چیست؟پی اچ پی یه زبان برنامه نویسی توسعه یافته برای طراحی وب است که مخفف Hypertext Preprocessor به معنای پیش پردازنده ی ابرمتن است اما در ابتدا php از عبارت  personal homepageبه معنای صفحه خانگی شخصی گرفته شده بود. از پی اچ پی میشه به عنوان زبان برنامه نویسی عمومی هم استفاده کرد. تا دی 1391 روی 244 میلیون وب سایت حدود 2 میلیون سرور نصب شده؛ میشه گفت حدود سه چهارم وب سایت های دنیا ازش استفاده میکنن؛ سایتهای شناخته شده ای مثل فیسبوک، وردپرس، جوملا، یاهو و ویکی پدیا از این زبان استفاده کردن. راسموس لردوف این زبان رو در سال 1373 ساخته است که در حال حاضر توسط گروه پی اچ پی در حال توسعه است.پی اچ پی یه زبان قدرتمند برای طراحی وب سایتهای پویا است یا میتونه سرویس خاصی رو پیاده سازی کند. این زبان برنامه نویسی میتونه با HTML ادغام بشه. پی اچ پی در حقیقت یه زبان اسکریپت نویسی رایگان و متن باز است که روی سرور یا مبتنی بر اون اجرا میشه. یعنی زمانی که سرور درخواست کاربر رو دریافت کرده از طریق یه زبان اسکریپت نویسی در سمت سرور  اون رو پردازش میکنه و عملیات متفاوتی بر اساس اون درخواست انجام میده و در آخر یه صفحه ی پویا در اختیار کاربر قرار میده. به طوری که مرورگر کاربر پاسخی که کدهای صفحه در اون قرار داره رو از سرور دریافت میکنه که با استفاده از موتور رندرینگ خودش صفحه رو به گونه ای خوانا در اختیار کاربر میگذاره.کدهای پی اچ پی به وسیله ی یه وب سرور که این نرم افزار روی اون نصب باشه تفسیر میشن. دستورهای این زبان به صورت مستقیم میتونن درون کدهای html قرار بگیرن. نسخه ی 4.3 به بعد زبان پی اچ پی قابلیت پشتیبانی از رابط خط فرمان یا command-line interface رو دارن. این قابلیت برای ایجاد نرم افزارهای غیر وب یا نرم افزارهای با واسط کاربری میتونه مورد استفاده قرار بگیره.پی اچ پی در حقیقت یه نرم افزار آزاد است که با مجوز پی اچ پی منتشر شده. البته این مجوز به خاطر محدودیت داشتن در استفاده از عنوان پی اچ پی با مجوز همگانی گنو یا GPL سازگار نیست. پی اچ پی رو میشه روی اکثر سرورها نصب کرد همچنین روی اکثر سیستم عاملها و پلتفرمها قابلیت نصب داره.زبان پی اچ پی چندین تابع پایه و افزونه داره که به خوبی روی وب سایت پی اچ پی مستندسازی شدن. نام گذاری توابع پایه از قوانین خاصی پیروی نمیکنن. این زبان تا حالا توابعی برای پشتیبانی رشته های اجرایی ارائه نکرده اما از سیستمهای چندپردازنده ی پازیکس پشتیبانی می کنن.توابع در نسخه ی 5.2 و نسخه های قبل از آن دست اول نبوده و فقط با اسمشون به شکل مستقیم و غیر مستقیم قابل فراخوانی هستن. توابع پی اچ پی بدون نوشتن نمونه ی اولیه تعریف میشن. پی اچ پی قابلیت تعریف توابع بدون نام رو نداره اما میشه با قرار دادن نام یه تابع در متغیر، اون رو به صورت غیر مستقیم فراخوانی کرد.قابلیت برنامه نویسی شیء گرایی در نسخه ی 3 به شکل ابتدایی به زبان پی اچ پی اضافه شد و در نسخه های بعدی بهبود یافت. در نسخه های پیشین، با اشیاء مثل یه داده برخورد میشد به این شکل که کل محتویاتش در هر بار مقداردهی یا ارسالش به یه تابع در یک فضای جدید کپی میشد. اما در نسخه ی 5 تعییراتی صورت گرفت و نحوه ی مدیریت اشیاء عوض شد. علاوه بر این، مفاهیم جدیدی مثل متغیرهای عمومی و شخصی و کلاسهای نهایی و انتزاعی و خیلی موارد دیگه معرفی شدند. همینطور پی اچ پی 5 قابلیت استفاده از اینترفیسها رو هم معرفی کرد و از پیاده سازی چند اینترفیس در یک کلاس پشتیبانی کرد.برخی از مشکلات امنیتی که در سال 91 توسط پایگاه داده امنیتی ملی منتشر شد مربوط به زبان پی اچ پی بود. مشکلات تکنیکی که در خود برنامه وجود داره خیلی کمه و این مشکلات اغلب توسط برنامه نویسان به علت عدم استفاده از روشهای مناسب ایجاد میشه. برای رفع این اشتباهات برنامه نویسان، قابلیتهای بسیاری برای تشخیص خطاهای امنیتی پیشنهاد شده که هنوز به تایید گروه نرسیده است.پی اچ پی به دلیل رایگان بودنش برای طراحی وب ارجحیت داره و برای طراحان وب سراسر دنیا مورد استفاده قرار می گیره. PHP بهترین گزینه برای طراحی وب ارزان است. گروه PHP یک منبع کد کامل رو فراهم می کنه که به کاربران اجازه می ده تا در صورت نیاز، سفارشی سازی کنند و طراحی وب رو توسعه بدن. پی اچ پی به راحتی با هر سیستم عامل از جمله Lennox، Mac، OSX و لینوکس کار می کنه. پی اچ پی همچنین بسیاری از سرورهای وب در حال استفاده رو از جمله Apache و IIS پشتیبانی می کنه.همانطور که گفتیم زبان برنامه نویسی پی اچ پی در سمت سرور است، نیازی به نصب نداره و به فضای پردازنده کمتری نیاز داره. خب این موضوع به این معنیه که روی سرعت سیستم شما تاثیر نمی گذاره. انعطاف پذیری پی اچ پی، مقیاس پذیری و قابلیت استفاده در یک طراحی کاربر پسند، باعث شده که یکی از متنوع ترین زبان ها برای ایجاد صفحات وب باشه. یکی از حسنهای پی اچ پی اینه که بسیار برای استفاده راحته و در هر سطح مهارتی که هستید چه تازه وارد باشید چه یه برنامه نویس حرفه ای میتونید ازش استفاده کنید. با استفاده از پی اچ پی می تونید در عرض چند ساعت یه اسکریپت ساده بنویسید.پی اچ پی یه زبان پردازه نویسی یا اسکریپت نویسی در سمت سرور است. شاید به خودتون بگید اصلا این زبان اسکریپت نویسی چی هست؟زبان اسکریپت نویسی یه نوع زبان برنامه نویسی است که برای نوشتن پردازه ها استفاده میشه. پردازه ها یا اسکریپتها برنامه های کوچکی هستن که میشه از طریق اونها بعضی وظایف تکراری و پراستفاده یا یک وظیفه طولانی رو به طور خودکار انجام داد. اکثرا این‌گونه وظایف مربوط به واژه‌پردازی در متن‌ها می‌شن.پردازه ها اجازه ی کنترل بعضی از کاربردهای نرم‌افزار رو به برنامه‌نویس می‌ده اما تعدادی از فرمان‌ها و امکانات زبان‌های بزرگ در این زبان‌ها حذف شدن. مثلاً امکان نوشتن فایل یا پاک کردن فایل‌ها روی سیستم کاربر مثل زبان‌های برنامه‌نویسی وجود نداره. جاوا اسکریپت، پرل و پایتون مثالهای این گروه هستن.زبان برنامه نویسی با اسکریپت نویسی یه سری تفاوتهایی باهم دارن. زبان برنامه نویسی تمام ویژگی های موردنیاز برای توسعه ی کامل اپلیکیشن رو داره، اما زبان اسکریپت نویسی بیشتر برای کارهای تکراری و روتین استفاده میشه. کدها در زبان برنامه نویسی قبل از اجرا کامپایل میشه، اما کدها در زبان اسکریپت نویسی معمولا بدون کامپایل اجرا میشن. زبان برنامه نویسی نیازی به قرار گرفتن در یه زبان دیگه نداره، اما زبان اسکریپ نویسی اغلب در محیطهای نرم افزاری دیگه قرار میگیره.محتوای پویای پی اچ پی برای وب سرورها به کاربران این امکان رو میده تا روی زبان برنامه نویسی سمت سرور تمرکز کنن. پی اچ پی یک قابلیت رابط خط فرمان رو توسعه داده است که می تونه در برنامه های گرافیکی مستقل مورد استفاده قرار بگیره. کاربران پی اچ پی به خروجی HTML محدود نمی شن اونها می تونن به راحتی از هر متن مانند XHTML یا دیگر فرمت فایل XML استفاده کنن. کاربران پی اچ پی همچنین قادر به ضمیمه انواع دیگری از تصاویر مانند فایل های PDF و فیلم های فلش هستند؛ که این می تونه به صورت خودکار در یک سیستم به جای نیاز به چاپ تولید و ذخیره بشه، به این صورت که برای محتوای پویای کاربر یک مخزن سمت سرور ایجاد بشه.با استفاده از پی اچ پی، حفظ یه وب سایت با موتور جستجوی خوب راحته و از جست و جوی پیچیده ی وب که باعث اشتباه موتورهای جستجو میشه، جلوگیری می کنه. این حالت باعث بالا بردن سئوی سایت شما و رسیدن به اهداف بازاریابی میشه. پی اچ پی به بهینه سازی سرعت صفحات وب از زمان پردازش در بخش سرور کمک میکنه. جاسازی پی اچ پی در یک صفحه خیلی راحته یا حتی میتونین یه صفحه ی اضافه ایجاد کنید. این به دیده شدن همه ی اسکریپت ها در یک صفحه ی وب کمک میکنه، بر عکس جاوا اسکریپت که اگه غیرفعال باشه غیر قابل مشاهده است.زبان نحوی پی اچ پی:یک فایل پی اچ پی همچنین می تونه حاوی تگهایی مانند HTML و اسکریپت سمت کاربر مانند جاوا اسکریپت باشه.·        هنگام یادگیری زبان پی اچ پی،HTML یک مزیت اضافی است. شما حتی می تونید پی اچ پی رو بدون دونستن HTML یاد بگیرید، اما توصیه می شه حداقل اصول HTML رو بدونید.·        سیستم های مدیریت پایگاه داده(DBMS) برای برنامه های مبتنی بر پایگاه داده.·        برای موضوعات پیشرفته تر مانند برنامه های تعاملی و خدمات وب، به جاوا اسکریپت و XML نیاز پیدا می کنید.فرمت فایل پی اچ پی:برای اینکه سرور، فایل های پی اچ پی و اسکریپتها رو شناسایی کنه پسوند فایل و تگها رو باید با فرمت &#34;.php&#34; ذخیره کنیم. پسوند فایلهای قدیمی ترپی اچ پیشامل:·        .phtml·        .php3·        .php4·        .php5·        phps.شما میتونید فایلهای پی اچ پی بدون تگ html بسازید که به این فایلها پی اچ پی محض میگن.سرور، کد PHP رو تفسیر می کنه و نتایج رو به عنوان کد HTML به مرورگرهای وب منتقل می کنه.برای اینکه سرور کد پی اچ پی رو از کد HTMLتشخیص بده، همیشه باید کد پی اچ پی رو در تگهای PHP قرار بدید.زبان پی اچ پی به کوچک و بزرگ بودن حروف حساسه است.تگ های پی اچ پی خود به حروف حساس نیستن، اما شدیدا توصیه می شه که از حروف کوچک استفاده کنید.چه کارهایی می تونید با PHP انجام بدید:کارهای زیادی هست که می تونید با PHP انجام بدید مثلا:·        می تونید صفحات و فایل های پویا تولید کنید.·        می تونید فایل های خود رو بر روی سرور ایجاد کنید، باز کنید، بخونید و بنویسید و  همینطور ببندید.·        شما می تونید داده ها رو از یک فرم وب مانند اطلاعات کاربر، ایمیل، اطلاعات کارت اعتباری و خیلی چیزهای دیگه جمع آوری کنید.·        می تونید برای کاربران وب سایتتون ایمیل بفرستید.·        می تونید برای دنبال کردن بازدید کننده ی وب سایتتون کوکی های سایت رو ارسال و دریافت کنید.·        شما می تونید اطلاعات رو در پایگاه داده خود ذخیره، حذف و تغییر بدید.·        می تونید دسترسی غیر مجاز به وب سایتتون رو محدود کنید.·        شما می تونید داده ها رو برای انتقال ایمن از طریق اینترنت رمزگذاری کنید.مزیتهای زبان پی اچ پی:اگه شما با بقیه ی زبان های سمت سرور مانند ASP.NET یا JSP آشنا باشید، ممکنه بدونید که چه چیزیپی اچ پی رو از بقیه متمایز میکنه. انتخاب پی اچ پی نسبت به بقیه مزایای متعددی داره. برخی از آنها عبارتند از:·        یادگیریآسان: یادگیری و استفاده ی پی اچ پی راحته. برای برنامه نویسان مبتدی که تازه شروع به توسعه وب کردن، پی اچ پی اغلب به عنوان بهترین و مناسب ترین انتخاب برای یادگیری در نظر گرفته می شه.·        منبع باز: پی اچ پی یک پروژه منبع باز است.  زبان برنامه نویسی توسط جامعه ی جهانی توسعه دهندگان توسعه یافته و نگهداری می شه که منبع کد رو به صورت آزاد برای دانلود و استفاده در اختیارتون می گذاره. هیچ هزینه ای برای استفاده از پی اچ پی برای پروژه های فردی یا تجاری، از جمله به روز رسانی های آینده نیاز نیست.·        قابلیت انتقال: پی اچ پی روی سیستم عامل های مختلف مانند مایکروسافت ویندوز، لینوکس، سیستم عامل مک، و غیره اجرا می شه و تقریبا با تمام سرورهای مورد استفاده امروز مانندApache، IIS و غیره سازگار است.·        عملکرد سریع: اسکریپت های نوشته شده در پی اچ پی معمولا سریعتر از اونهایی که در زبان های اسکریپتی دیگر مانند ASP.NET یا JSP نوشته شده است اجرا می شن.·        اجتماع گسترده: از آنجا که PHP توسط جامعه ی جهانی پشتیبانی میشه، پیدا کردن کمک یا مستندات برای پی اچ پی آنلاین بسیار آسان است.نسخه های مختلف پی اچ پی:تاکنون نسخه های زیادی از پی اچ پی منتشر شده که در زیر به بررسی اونها می پردازیم: نسخهphpتاریخانتشارتوضیحات1.018/03/1374ایننسخهبهصورترسمی&#34;PersonalHomePageTools&#34;یا&#34;PHPTools&#34;نامیدهشد.2.010/08/13763.016/03/1377توسعه‌دهندگانبهچندنفرافزایشیافتند.زیوسوراسکیواندیگاتمنسایننسخهروبازنویسیکردند.4.002/03/1379سیستمدومرحله‌ایتجزیه/اجرایپیشرفتهبهایننسخهاضافهشد.4.119/09/1380متغیرهایفوقِسراسری(Superglobal)معرفیشدند.4.202/02/1381تنظیمregister_globalsبهصورتپیش‌فرضغیرفعالشد.بااینتغییراطلاعاتیکهازطریقشبکهارسالمی‌شدند،دیگربهطورمستقیمدرمحدودهمتغیرهایفوقسراسریقرارنمی‌گرفتند.ایننکتهمشکلاتامنیتیاحتمالیبسیاریازنرم‌افزارهارابرطرفکرد.4.306/10/1381رابطخطفرمانیاهمانCLIبهایننسخهاضافهشد.4.420/04/1384صفحاتراهنما(manpage)برایدستوراتphpsizeوconfig-phpاضافهشد.5.023/04/1383موتورزِندzendmotor))نسخه۲معرفیشد.5.103/09/1384بهبودبازدهیبامعرفیمتغیرهایمترجم(CompilerVariables)درموتورجدیدپی‌اچ‌پی.مدلPDOبهعنوانیکرابطپایداربرایبرقراریارتباطبابانک‌هایاطلاعاتیمعرفیشد.5.211/08/1385افزونهفیلتر(FilterExtension)بهصورتپیش‌فرضفعالشد.پشتیبانیازجی‌سن(JSON)افزودهشد.5.309/04/1388شتیبانیازnamespace,latestaticbinding،دستورjump(نسخهٔضعیفشدهٔدستورGoto)وزبالهجمع‌کن.پشتیبانیبهترازسیستم‌عاملویندوز.پشتیبانیازاس‌کیوال‌لایتنسخهٔ۳.کتابخانهٔMysqlndجایگزینکتابخانهٔlibmysql(کهمسئولبرقراریارتباطبابانک‌اطلاعاتیمای‌اس‌کیوالبود)شد.افزونهfileinfoکهکاراییبهتریدرموردMIMEهادارد،جایگزینافزونهٔmime_magicشد.افزونهٔبین‌الملل(Internationalization)اضافهشدوتوابعeregازدورخارجشدند.5.411/12/1390پشتیبانیازTrait.پشتیبانیازآرایه‌هابافرمتکوتاه.سروروبداخلی.بهبودکاراییواستفادهازحافظهبهمیزانکمتر.5.530/03/1392جنراتورهاافزودهشدند(Generators).بهینه‌ساززند+(ZendOptimizer+)اضافهشد.5.604/06/1393قابلیتبازنویسیعملگرها(OperatorOverloading).ایجادتغییراتدرGMPیاGNUMultiplePrecision6.0عرضهنشدهنسخهرهاشده‌ایازphp7.012/09/1394معرفینسخهسومموتورزِندوبهبودکارایی،پشتیبانیازمتغیرهای۶۴بیتیدرویندوز7.108/1395قابلیتبازگردانینوعvoidتوسطتوابع برای استفاده از پی اچ پی به چه چیزی نیاز دارید؟برای استفاده و اجرای صفحات پی اچ پی باید سرور آپاچی ( Apache ) یا IIS رو روی کامپیوتر خود نصب کنید یا اینکه صفحه خود رو بر روی یک سرور که از پی اچ پی پشتیانی می کنه، اجرا نمایید.همینطور که متوجه شدید زبان پی اچ پی یکی از رایج ترین زبانهای برنامه نویسی است. اگه دوست دارید سایتتون با پی اچ پی نوشته بشه کافیه با دیجی پاترا تماس بگیرید و درخواستتون رو برای ما ارسال کنید.</description><category>digipatra</category><author>digipatra</author><pubDate>Wed, 01 Apr 2020 21:14:36 +0430</pubDate></item><item><title>برترین زبان های برنامه نویسی سال 2020</title><link>https://virgool.ir/@digipatra/برترین-زبان-های-برنامه-نویسی-سال-2020-ultfrfrtggru</link><description>ترندهای برنامه نویسی در سال ۲۰۲۰ چه خواهند بود؟ https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 اگر به برنامه‌نویسی و توسعه برنامه‌های کاربردی علاقه‌مند باشید، بدون شک به این موضوع اندیشیده‌اید که کدام یک از زبان‌های برنامه‌نویسی در آینده محبوبیت بیشتری میان جامعه برنامه‌نویسان و توسعه‌دهندگان پیدا خواهند کرد. به عبارت دیگر، رصد کردن ترندهای برنامه‌نویسی در سال‌های آینده به برنامه‌نویسان و توسعه‌دهنگان اجازه می‌دهد تا پلتفرمی را برای برنامه‌نویسی انتخاب کنند که از یک سو آینده شغلی مناسبی برای آن‌ها رقم خواهد زد و از سوی دیگر، بیشترین امکانات و بهترین ابزارهای لازم برای توسعه یک برنامه کاربردی را در اختیار برنامه‌نویسان قرار می‌دهد.در این مطلب، با ترندهای برنامه‌‎نویسی در سال 2020 و فراتر از آن آشنا خواهید شد. رصد کردن ترندهای برنامه‌نویسی به شما اجازه خواهد داد تا ظهور فناوری‌های برنامه‌نویسی برتر در سال 2020 را پیش‌بینی کنید. بنابراین، سؤالی که باید در اینجا پرسیده شود این است که کدام یک از زبان‌های برنامه‌نویسی در آینده محبوب‌تر خواهند شد و اینکه ترندهای برنامه‌نویسی در سال 2020 و فراتر از آن چه خواهند بود؟ https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 به جرأت می‌توان گفت که سال 2019 یکی از بهترین سال‌ها برای جامعه برنامه‌نویسی و زبان‌های برنامه‌نویسی است. تنوع زبان‌های برنامه‌نویسی و کاربرد آن‌ها برای مقاصد مختلف نظیر «علم داده» (Data Science)، «یادگیری ماشین» (Machine Learning)، «هوش مصنوعی» (Artificial Intelligence)، «توسعه تحت وب» (Web Development) و سایر موارد، صنعت زبان‌های برنامه‌نویسی را به یکی از داغ‌ترین سوژه‌های فناوری و پرسودترین تجارت‌های حوزه فناوری تبدیل کرده است.زبان‌های برنامه‌نویسی نظیر «پایتون» (Python)، «جاوا اسکریپت» (Javascript) و «جاوا» (Java) همچنان در میان جامعه برنامه‌نویسان و توسعه‌دهندگان برنامه‌های کاربردی محبوب هستند. دلیل این امر، پشتیبانی گسترده از این زبان‌ها و ارائه «بسته‌های برنامه‌نویسی» (Packages) متنوع برای آن‌ها است. در نقطه مقابل، زبان‌هایی نظیر «پرل» (Perl)، «دلفی» (Delphi) و PHP روندی نزولی در پیش گرفته‌اند و محبوبیت آن‌ها نزد برنامه‌نویسان و توسعه دهندگان برنامه‌های کاربردی کاهش پیدا کرده است.بنابراین، مطالعه ترندهای برنامه‌نویسی در سال 2020 و اینکه کدام یک از زبان‌های برنامه‌نویسی نوظهور محبوبیت بیشتری در میان برنامه‌نویسان پیدا می‌کنند، کمک خواهد کرد تا برنامه‌نویسان مبتدی و علاقه‌مندان به توسعه برنامه‌های کاربردی، انتخاب بهتری در یادگیری زبان‌های برنامه‌نویسی داشته باشند.زبان Rust یکی از ترندهای برنامه‌نویسی خواهد بود https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 بدون شک در سال ۲۰۲۰ شاهد ظهور زبان برنامه‌نویسی Rust به عنوان یکی از ترندهای برنامه‌نویسی خواهید بود. زبان Rust، یک «زبان برنامه‌نویسی سیستمی و چندالگویی» (Multi-Paradigm and System Programming Language) است که تمرکز زیادی روی ویژگی‌های امنیتی دارد؛ به ویژه ویژگی «هم‌روندی» (Concurrency) امن. زبان Rust از لحاظ «قواعد دستوری» (Syntax) شباهت زیادی به زبان C++‎ دارد. با این حال، ویژگی کلیدی که آن را از زبان C++‎ متمایز می‌کند، عملکرد بالا و «امنیت حافظه» (Memory Safety) در زبان Rust است.منظور از امنیت حافظه در زبان‌های برنامه‌نویسی، وضعیتی است که در آن دستورات یک زبان برنامه‌نویسی به گونه‌ای طراحی می‌شوند که در هنگام اجرا و دسترسی به حافظه، سبب ایجاد خطاهای نرم‌افزاری و «آسیب‌پذیری امنیتی» (Security Vulnerabilities) در سیستم نمی‌شوند و یا این خطاها و آسیب‌پذیری‌ها را به حداقل می‌رسانند. خطاهایی نظیر «سرریز بافر» (Buffer Overflow) از جمله خطاهای نرم‌افزاری و آسیب‌پذیری‌های امنیتی هستند که استفاده از زبان Rust، مواجهه با چنین خطاهایی را به حداقل می‌رساند. با این اوصاف، زبان برنامه‌نویسی Rust به یکی از ترندهای برنامه‌نویسی در سال 2020 تبدیل خواهد شد. https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 ویژگی‌های امنیتی Rust، این زبان را به یکی از ترندهای برنامه‌نویسی در سال 2020 تبدیل کرده است. در طی چهار سال اخیر، زبان برنامه‌نویسی Rust رشد بسیار قدرتمندی را تجربه کرده است. با این حال، پیش‌بینی‌ها حکایت از آن دارد که زبان Rust در سال 2020 به طور رسمی به یکی از زبان‌های «جریان اصلی» (Mainstream) تبدیل خواهد شد. دلیل این امر، اشتیاق زیاد و البته روز افزون مدارس، دانشگاه‌ها و مؤسسات آموزشی به معرفی و آموزش زبان Rust به علاقه‌مندان است. این امر در طی سال‌های آینده نیز افزایش خواهد یافت. چنین امری سبب ایجاد موجی از مهندسان نرم‌افزار و برنامه‌نویسان مسلط به زبان Rust طی چند سال آینده خواهد شد. https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7%D8%AF%D8%B1%DA%86%D9%86%D8%AF%D8%B3%D8%A7%D9%84%D8%A7%D8%AE%DB%8C%D8%B1%D8%8C%D8%B2%D8%A8%D8%A7%D9%86Rust%D9%85%D8%AD%D8%A8%D9%88%D8%A8%DB%8C%D8%AA%D8%AF%D9%88%DA%86%D9%86%D8%AF%D8%A7%D9%86%DB%8C%DA%A9%D8%B3%D8%A8%DA%A9%D8%B1%D8%AF%D9%87%D9%88%D8%A8%D9%87%DB%8C%DA%A9%DB%8C%D8%A7%D8%B2%D8%AA%D8%B1%D9%86%D8%AF%D9%87%D8%A7%DB%8C%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%D9%86%D9%88%DB%8C%D8%B3%DB%8C%D8%AA%D8%A8%D8%AF%DB%8C%D9%84%D8%B4%D8%AF%D9%87%D8%A7%D8%B3%D8%AA یکی دیگر از دلایل محبوبیت زبان Rust در چند سال اخیر، جامعه برنامه‌نویسی فعال و پر جنب و جوش آن است. همچنین، سرمایه‌گذاری شرکت فیسبوک روی زبان Rust و استفاده از آن برای ساختن ارز دیجیتالی و محیط برنامه‌نویسی Libra سبب خواهد شد تا جایگاه این زبان به برنامه‌نویسی به عنوان یکی از ترندهای برنامه‌نویسی در سال 2020 مستحکم‌تر شود. اگر شما به دنبال یادگیری یک زبان برنامه‌نویسی جدید و آینده‌دار هستید، زبان برنامه‌نویسی Rust یکی از بهترین گزینه‌ها خواهد بود.افزایش به کارگیری زبان GraphQL برای توسعه برنامه‌های کاربردی https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 زبان GraphQL یک زبان «منبع باز» (Open Source) برای «دستکاری» (Manipulation) و «پرس و جوی» (Query) داده‌ها در واسط‌های برنامه‌نویسی کاربردی محسوب می‌شود. یکی از ویژگی‌های مهم زبان GraphQL، فراهم آوردن قابلیت دستکاری و پرس و جوی داده‌ها در «زمان اجرا» (Run Time) است. زبان GraphQL، در سال 2012 توسط فیسبوک توسعه داده شد و در سال 2015 در دسترس عموم قرار گرفت. نکته مهم در مورد زبان GraphQL، افزایش علاقه برنامه‌نویسان به این زبان در چند سال اخیر است. چنین امری، زبان GraphQL را به یکی از ترندهای برنامه‌نویسی تبدیل کرده است. https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 هر چقدر که پیچیدگی برنامه‌های کاربردی و داده‌های استفاده در آن‌ها افزایش یابد، ضعف زبان‌ها و پلتفرم‌های دیگر در دست و پنجه نرم کردن با پیچیدگی‌های معرفی شده در این برنامه‌ها بیشتر مشخص می‌شود. در چنین حالتی، بهترین گزینه استفاده از زبان GraphQL است. زبان GraphQL در مقایسه با پلتفرم‌های مرسوم REST API، راه حل به مراتب قدرتمندتری برای «واکشی» (Fetch) داده‌ها محسوب می‌شود.پلتفرم‌های REST API، معمولا برای واکشی داده‌ها احتیاج به بارگیری اطلاعات از چندین آدرس URL مختلف دارند. در حالی که «واسط‌های برنامه‌نویسی کاربردی» (Application Programming Interfaces) تولید شده به وسیله زبان GraphQL قادر هستند تمامی داده‌های مورد نیاز یک برنامه کاربردی را تنها با یک «درخواست» (Request) واکشی کنند. چنین قابلیت مهمی در زبان GraphQL، این ابزار کاربردی را به یکی از ترندهای برنامه‌نویسی در سال 2020 تبدیل خواهد کرد. https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7%D9%86%D8%AD%D9%88%D9%87%D9%88%D8%A7%DA%A9%D9%86%D8%B4%DB%8C%D8%AF%D8%A7%D8%AF%D9%87%E2%80%8C%D9%87%D8%A7%D8%AA%D9%88%D8%B3%D8%B7%D9%88%D8%A7%D8%B3%D8%B7%E2%80%8C%D9%87%D8%A7%DB%8C%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D8%AF%DB%8C%D9%86%D9%88%D8%B4%D8%AA%D9%87%D8%B4%D8%AF%D9%87%D8%A8%D9%87%D8%B2%D8%A8%D8%A7%D9%86GraphQL در طی چند سال اخیر، شرکت‌ها، سازمان‌ها و تیم‌های زیادی از زبان GraphQL برای دستکاری و واکشی داده‌های پیچیده در محیط و زبان‌های برنامه‌نویسی مختلف استفاده کرد‌اند. چنین کاری با هدف ساختن برنامه‌های کاربردی موبایل، وب‌سایت‌ها و واسط‌های برنامه‌نویسی کاربردی (APIs) با کمک زبان GraphQL انجام می‌شود. https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 استفاده شرکت‌ها، سازمان‌ها و تیم‌های مختلف از GraphQL، این زبان دستکاری و واکشی داد‌ه‌ها را به یکی از ترندهای برنامه‌نویسی در سال 2020 تبدیل خواهد کرد.برنامه‌های کاربردی تحت وب پیش‌رونده https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 یکی از دیگر از ترندهای برنامه‌نویسی در سال 2020، «برنامه‌های کاربردی تحت وب پیش‌رونده» (Progressive Web Apps | PWA) خواهند بود. این دسته از برنامه‌های کاربردی، رویکرد جدیدی در ساختن برنامه‌های کاربردی محسوب می‌شوند. در این رویکرد، بهترین ویژگی‌های نرم‌افزارهای تحت وب با خصوصیات برتر برنامه‌های کاربردی موبایل ترکیب می‌شوند تا برنامه‌های جدیدی شکل بگیرند. برنامه‌های کاربردی تحت وب پیش‌رونده یا PWA، بدون شک یکی از ترندهای برنامه‌نویسی در سال 2020 خواهند بود. https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 با بررسی سطحی تعداد توسعه‌دهندگان برنامه‌های تحت وب و برنامه‌نویسان پلتفرم‌های خاص (نظیر ویندوز، مک، اندروید، ios، تحت وب و سایر موارد)، به راحتی می‌توان دریافت که تعداد توسعه‌دهندگان برنامه‌های تحت وب بیشتر هستند. در چند سال آینده، شرکت‌های بزرگ در خواهند یافت که به جای برنامه‌نویسی برای پلتفرم‌های خاص، آن‌ها قادر خواهند بود با هزینه به مراتب کمتری، برنامه‌های کاربردی تحت وب پیش‌رونده یا PWA تولید کنند. در چنین حالتی، شاهد موج عظیمی از برنامه‌های کاربردی تحت وب پیش‌رونده و جامعه برنامه‌نویسی پویا و متشکل از توسعه‌دهندگان این دسته از برنامه‌های کاربردی خواهید بود.البته، از آنجایی که فناوری ساختن برنامه‌ها با استفاده از رویکرد PWA نوظهور است، بازه گذار از توسعه برنامه‌های کاربردی مرسوم به این دسته از برنامه‌ها ممکن است کمی زمان‌بر باشد (در تمامی فناوری‌های نوظهور، شاهد چنین بازه گذاری خواهید بود). با این حال، زمانی که شرکت‌های بزرگ دریابند که نوشتن یک برنامه قابل اجرا در پلتفرم‌های مختلف (برنامه‌ها نوشته شده توسط رویکرد PWA، تنها به یک مرورگر منطبق با برنامه‌های PWA برای اجرا احتیاج خواهند داشت) نه تنها کار کمتری می‌طلبد، بلکه سود بیشتری نصیب آن‌ها خواهد کرد، به سرعت به سمت توسعه چنین برنامه‌هایی مهاجرت خواهند کرد. https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 داده‌های Google Trend نیز گواه این مطلب است که برنامه‌های کاربردی تحت وب پیش‌رونده، یکی از ترندهای برنامه‌نویسی در سال 2020 خواهند بود. بر خلاف دیگر رویکردهای برنامه‌نویسی، از آنجایی که مهم‌ترین عامل تأثیرگذار در موفقیت یک برنامه PWA، تعامل صحیح این برنامه‌ها با مرورگرهای نصب شده در پلتفرم‌های مختلف است، بیشتر حجم کاری برنامه‌نویسی با استفاده از رویکرد PWA، در بخش Front-End توسعه برنامه کاربردی متمرکز خواهد شد.افزایش محبوبیت WebAssembly در سال 2020پلتفرم WebAssembly (که به شکل مخفف به آن Wasm نیز گفته می‌شود)، یک قالب یا فرمت دستورالعمل باینری برای «ماشن‌های مجازی مبتنی بر پشته» (Stack-based Virtual Machine) محسوب می‌شود. پلتفرم Wasm به عنوان محیطی «قابل انتقال» (Portable) جهت «کامپایل کردن» (Compiling) کدهای زبان‌های سطح پایین (Low-Level Languages) نظیر C ،C++‎ و Rust طراحی شده است. https://virgool.io/d/ultfrfrtggru/%DA%A9%D8%A7%D9%85%D9%BE%D8%A7%DB%8C%D9%84%DA%A9%D8%B1%D8%AF%D9%86%DA%A9%D8%AF%D9%87%D8%A7%DB%8C%D8%B2%D8%A8%D8%A7%D9%86%E2%80%8C%D9%87%D8%A7%DB%8C%D8%B3%D8%B7%D8%AD%D9%BE%D8%A7%DB%8C%DB%8C%D9%86%D9%86%D8%B8%DB%8C%D8%B1C%D8%8CC++%E2%80%8E%D9%88Rust%D8%AF%D8%B1%D9%85%D8%AD%DB%8C%D8%B7%E2%80%8C%D9%87%D8%A7%DB%8C%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C%D8%AA%D8%AD%D8%AA%D9%88%D8%A8 همچنین، می‌توان از پلتفرم Wasm جهت توسعه نرم‌افزار‌های تحت وب (از جمله برنامه‌های کاربردی تحت وب پیش‌رونده یا PWA) استفاده کرد. به عبارت دیگر، می‌توان از پلتفرم Wasm به عنوان ابزاری برای یکپارچه‌سازی فناوری‌های JavaScript با دیگر فناوری‌های برنامه‌نویسی و واسط‌های برنامه‌نویسی کاربردی استفاده کرد. به عنوان نمونه، در صورتی که قصد استفاده از کتابخانه پردازش تصویر زبان Rust را در برنامه‌های کاربردی React داشته باشید، پلتفرم WebAssembly اجازه چنین کاری را به شما خواهد داد. چنین ویژگی‌هایی در WebAssembly، این پلتفرم را به یکی از ترندهای برنامه‌نویسی در سال 2020 تبدیل خواهد کرد.از جمله مهم‌ترین ویژگی‌های پلتفرم WebAssembly، می‌توان به موارد زیر اشاره کرد:کارایی و سرعت بالا: کدبندی‌های تولید شده به فرمت باینری در ماشین پشته Wasm، از نظر اندازه و زمان بارگذاری بسیار مقرون به صرفه و کارآمد هستند. پلتفرم WebAssembly، با بهره‌گیری از قابلیت‌های سخت‌‍افزاری مشترک در دامنه وسیعی از پلتفرم‌ها، کدها را با سرعت بسیار مناسبی اجرا می‌کند.امنیت در پلتفرم WebAssembly: پلتفرم WebAssembly، یک محیط اجرایی با ویژگی «حافظه امن» (Memory-Safe) تعریف می‌کند. محیط اجرایی امن تعریف شده در پلتفرم WebAssembly این قابلیت را دارد تا درون ماشین‌های مجازی جاوا اسکرپیت نیز پیاده‌سازی و اجرا شود. چنین ویژگی مهمی، امکان اجرای کدهای نوشته شده در پلتفرم WebAssembly را در موتور اختصاصی مرورگرها، جهت اجرای مؤلفه‌های جاوا اسکریپت، فراهم می‌آورد.در محیط‌های اجرای کدها و برنامه‌های کاربردی، سرعت و عملکرد حرف اول را می‌زند و مهم‌ترین عامل محسوب می‌شود. ثابت نگه داشتن سطح عملکرد اجرایی کدها و برنامه‌های کاربردی، به ویژه زمانی که حجم داداه‌ها به شدت افزایش می‌یابد، کار بسیار سختی خواهد بود. در چنین حالتی، وجود محیط اجرایی مناسب جهت کامپایل کردن کدهای زبان‌های سطح پایین نظیر C ،C++‎ و Rust، نه تنها امکان مدیریت و پردازش حجم عظیمی از داده‌ها را فراهم می‌کند، بلکه سرعت اجرای کدهای مرتبط با برنامه کاربردی را نیز افزایش می‌دهد.کتابخانه React همچنان به پیشتازی خود ادامه خواهد دادبدون شک، کتابخانه React، محبوب‌ترین کتابخانه زبان جاوا اسکریپت برای برنامه‌نویسی Front-End و توسعه برنامه‌های کاربردی تحت وب است. دلیل این امر سادگی توسعه و ساختن برنامه‌های کاربردی توسط این کتابخانه است. همچنین، تیم‌های پشتیبانی کتابخانه React و جامعه برنامه‌نویسان، تلاش‌های زیادی برای فراهم کردن امکانات و ابزارهای لازم جهت توسعه «واسط کاربری» (User Interface) برنامه‌های کاربردی توسط این ابزار کاربردی انجام داده‌اند. در نتیجه، کتابخانه React، همچنان به رشد بی‌سابقه خود (به ویژه، در چند سال اخیر) ادامه خواهد داد. همین امر سبب شده است تا کتابخانه React به یکی از ترندهای برنامه‌نویسی در چند سال اخیر تبدیل شود.داده‌های گوگل ترندز نیز گواه این مطلب است که کتابخانه React و توسعه واسط کاربری توسط این کتابخانه، رشد بی‌سابقه‌ای در چند سال اخیر تجربه کرده و توجه برنامه‌نویسان و توسعه‌دهندگان Front-End زیادی به سمت آن منعطف شده است. از جمله دیگر پلتفرم‌های مشابهی که برای توسعه واسط کاربری مورد استفاده قرار می‌گیرند، می‌توان به مواردی نظیر Vue و Angular اشاره کرد. https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 جاوا اسکریپت، زبانی مطمئن برای برنامه‌نویسان و توسعه‌دهندگان وب https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 بدون شک، دهه دوم قرن 21 میلادی، دهه حکم‌رانی زبان برنامه‌نویسی جاوا اسکریپت (به ویژه، در میان زبان‌های برنامه‌نویسی Front-End) محسوب می‌شود. در این دهه، زبان جاوا اسکریپت رشد بی‌سابقه‌ای را (به ویژه، در چند سال اخیر) تجربه کرده است و به نظر نمی‌رسد که روند رشد آن، به زودی کند یا متوقف شود.برخی از توسعه‌دهندگان و جوامع برنامه‌نویسی، به دلیل ویژگی‌های خاص زبان جاوا اسکریپت و تمرکز زیاد آن روی برنامه‌نویسی فرانت اند، زبان جاوا اسکریپت را یک زبان واقعی برای توسعه برنامه‌های کاربردی به شمار نمی‌آورند. در حالی که چنین برداشتی از زبان جاوا اسکریپت کاملا غلط است؛ امروزه، زبان جاوا اسکریپت قلب تپنده بسیاری از شرکت‌های بزرگ فعال در حوزه فناوری نظیر گوگل، Netflix، فیسبوک و سایر موارد محسوب می‎شود.نکته قابل توجه در مورد زبان جاوا اسکریپت این است که بسیاری از فناوری‌های خلاق و نوآورانه در یک دهه اخیر، به ویژه در حوزه برنامه‌نویسی Front-End، به وسیله توسعه‌دهندگان و جامعه برنامه‌نویسی جاوا اسکریپت پدید آمده‌اند. https://virgool.io/d/ultfrfrtggru/%F0%9F%93%B7 همچنین، آمارها نشان می‌دهد که برنامه‌نویسان و توسعه‌دهندگان جاوا اسکریپت، بیشترین مشارکت را در به اشتراک‌گذاری پروژه‌های مختلف در «مخزن‌های» (Repositories) نرم‌افزاری و وب‌سایت‌های اشتراک کد نظیر Github دارند. همچنین، برای پنجمین سال متوالی، بیشترین برنامه‌ها و کدهای به اشتراک گذاشته شده در مخزن‌های نرم‌افزاری و وب‌سایت‌های اشتراک کد، برنامه‌های نوشته شده به زبان جاوا اسکریپت هستند.</description><category>digipatra</category><author>digipatra</author><pubDate>Wed, 01 Apr 2020 21:11:03 +0430</pubDate></item></channel></rss>