سلام
اولاً باز این پیر انجمن VB ما را آب کرد!
دوماً
چشم! ما پیرمرد حرف گوش کنی هستیم ولی باور کنید با پایتون شفیق شما مشکلی ندارم! :41::10:نقل قول:
عزیز جان من نمیخواهم بحث کنم ولی چون خودتان گفتید من مثالهایی اندک از قابلیت ها و تعداد خطوط برنامه نویسی را می آورم به هر کدام شک داشتید بگویید تا کدش را بگذارم ولی قبول کنید که الآن کدها زیاد میشود.
من که از اول هم قصد کوبیدن پایتون شفیقتان را نداشتم ولی به شما پیشنهاد میکنم اگر خواستید چیزی را بکوبید دست روی قوی ترین نقطه قوت آن نگذارید!!!!!
باز تاکید میکنم که تعداد خطوط زیاد هم ملاک نیست ولی اگر ملاک باشد بدون تردید و باقطعیت میگویم که VB.Net و همتایش C#.Net در صدر هرم کدنویسی کم قرار دارند، چون شما فرمودید، چشم!
لطف کنید و انصافاً همین نمونه ها را بگویید در پایتون شفیقتان چند خط میشود؟
تمام دستورات زیر بدون هیچ نوع Include خارجی استف نه اینکه بگویم فلان ActiveX را بیاورید و آنگاه با یک خط کد کار انجام میشود.
هر چه یادم بیاید بدون ترتیب مینوسم، چون اتخاب یک کلاسس ماژول اتز بین چندین هزار کلاسس ماژول و بعد هم انتخاب یک تک دستور از بین ده ها دستور یک کلاسس مازول کار زیاد ساده ای نیست.
نکته آخر آنکه تمام امکانات فوق هم در وب و هم ویندوز و یک رایانه واحد جواب میدهند و اصولاً فرقی ندارد.
----------------------------------------------------------------------------
1- ارتباطات سطح سوکت برای دو رایانه در یک شبکه و اجرای دستور یکی در دیگری
(مثلاً شما از اینجا دستور بدهید و photoshop در آن طرف بالا بیاید.)
کمتر از 10 خط کد نویسی برای هر سمت!
2- تبدیل IP به نام دامنه و تبدیل نام دامنه به IP
برای هر کدام 1 خط
3- تبدیل تاریخ [شمسی-قمری-چینی-ابری-ژاپنی-تایوانی و 4 تقویم دیگر] به میلادی
2 خط (و مشابه پایتونش ... البته اینکه کلاسسی در 100 خط تعریف کنید و بعد در دو خط استفاده کنید این میشود کد 102 خطی، گفتم یادآوری کنم یکبار دوستان نامش را کد دوخطی نگذارند.)
4- تبدیل تاریخ میلادی به [شمسی-قمری-چینی-ابری-ژاپنی-تایوانی و 4 تقویم دیگر]
4 خط
5- به دست آوردن اطلاعات فرهنگی یک فرهنگ یا کشور خاص (مثلاً واحد پول! یا فرمت نمایش اعداد، اعشار دارد؟ چند رقم و...)
1 خط کد اولیه و برای هر آیتم مورد نظر 1 خط دیگر
(کلاسسها و قسمتهای دیگر دات نت هم از اطلاعات فرهنگ و تقویم استفاده میکنند و شما میتوانید با وراثت تقویم و فرهنگ جدید بسازید و به ماژولهایی که برای موارد کارشان مصرف کننده هستند بدهید، واقعاً این دات نت خیلی بسته است!!!!!!!!!!)
6-تغییر زبان تایپی کیبورد در برنامه های ویندوزی
1 خط
7- بازکدن یک فایل متنی و اضافه کردن متن به انتهای ان و بستن آن
1 خط!
8- اکسن تمام کلاسس ها و نوع های تعریفی در یک dll کامپایل شده به جهت لیست کردن محتویات و امکانات و یا پیدا کردن کلاسس خاصی که از کلاسسی وراثت دارد یا نام خاصی دارد.
کمتر از 10 خط !
9- ارسال ایمیل
2 خط! (به طور وحشتناکی جالب است!)
10- پخش یک فایل wav در ویندوز
2 خط
11- دانلود یک فایل zip یا تصویر یا ... و ذخیره در محل مورد نظر هارد (با صرف کد نویسی و بدن نمایش هیچ پنجره ای)
2 خط!!
12- آپلود فایل در صفحات وب
1 خط! (این یکی را خیلی خوشحال میشوم بدانم در پایتون شفیق چند خط میشود.)
13- حفظ وضعیت و محتویات کنترلرها در وب و صفحات ASP.Net به طوری که در بین submit ها و نمایش مجدد محتویات حفظ شود!
صفر خط کد!!! انجام به طور خودکار (خودتان میدانید در زبانهای دیگر چه دردسری دارد!)
14- اعتبار سنجی مقادیر ورودی در صفحات وب (مثلاً جایی باید کاربر ایمیلش را ندهد ولی چیزی وارد کند که از نظر دستوری ایمیل نباشد!)
فقط یک خط کد ان هم در بلاک HTML نیاز دارد و در مازول اصلی کد نویسی هیچ کدی نمیخواهد!
15- ذخیره کل یک جدول در یک فایل XML و باز یابی یک جدول از یک فایل XML
برای هر کدام کمتر از 10 خط کد.
16- نمایش یک جدول از بانک اطلاعاتی در صفحات وب و با قابلیت Page بندی و مثلاً هر صفحه 20 آیتم!
هیچ خط کد نویسی مستقیم! فقط به کنترل DataGrid و DataSource نیاز دارد که در بلاک html می آیند (... asp:DataGrid>)یعنی هیچ دستور VB.Net یا C#.Net ای شما نخواهید دید.
17 - تغییر سایز runtime تصویر و ارسال برای نمایش در صفحات وب
کمتر از 10 خط
18- ساخت یک لیست پیوندی برای استفاده و نگه داری شاخه های شی ای!
1 خط
19- ساخت یک Collection معمولی و یا Sort شده که جستجو در ان به صورت الگوریتم فوق سریع Binary (هر تست حذف نصب آیتمها) صورت میگیرد
1 خط
20- جستجوی Binary در یک آرایه عددی Sort شده
1 خط !
21- ساخت نمونه از حافظه به حالت Stack یا LIFO (آخرین ورودی-اولین خروجی) یا خشابی
1 خط
22- ساخت نمونه از حافظه به حالت (FIFO) (اولین ورودی-اولین خروجی) یا صف
1 خط
23- ساخت یک تصویر Runtime به همراه نوشتن یک متن روی آن (یک کار ساده گرافیکی، که کاربرد هم دارد، مثلاً برای اعتبار سنجی و جلوگیری از حملات dos قابل استفاده میشود)
3 خط کد!
اگر با قابلیت RightToLeft برای متون فارسی نیاز باشد، میشود 4 خط کد!
(بیشتر زیانهای دیگر هنوز در ترسیمات گرافیمی RightToLeft را ندارند.)
24-به دست آورن پوشه های سیستمی ویندوز-یا رنگها و فونتهای استاندارد تنظیم شده در ControlPanel برای قسمت های مختلف (برای برنامه های غیر وبی)
1 خط کد برای هر کدام.
25- لیست فونت های نصب شده برای برنامه تحت ویندوز
2 خط
26- ارتباط با پورت سریال رایانه و ارسال اطلاعات
حدود 5 خط
27- تبدیل یک String با توجه به Encoding مورد نظر به آرایه بایتی (مثلاً برای ذخیره دستی در فایل یا ارسال با فورمت دلخواه و...) اغلب زبانها انجام میدهند ولی صرفاً یا Unicode هستد یا Ascii ولی دات نت UTF-8 و UTF-7 و UTF-32 و BigEndian را هم دارد و اجازه تولید فرمت خاص جدید خودتان را هم میدهد (واقعاً این دات نت چقدر بسته است!!!!!)
1 خط کد!!!
28- ساخت ریسمان جدید و به همراه دستور شروع به کار ریسمان جدید برای انجام موازی
2 خط
29- قابلیتهای runtime بسیار قوی، که اصلاً برخی زبانها بکل فاقد آن هستند.
به دست آوردن نام توابع و متدها و رویدادهای عضو یک کلاسس
در حدود 5 تا 10 خط میتوان کل اعضای یک کلاسس را پیاده کرد و مثلاً یک چیزی شبیه کاوشکر داخل فایل dll ساخت
(کلاسسها را نشان دهد، اعضای کلاسس ها و اینکه هر کدام چه پارامتری میگیرند و چه پس میدهند و در صورت نیاز ساخت new کلاسس و اجرای دستور و...)
قابلیتهای runtime دات نت به حدی قوی است که اغلب متوجه نمیشوند اصلاً آدم چه میگوید و بیان اغلب آنها نیاز به مثالهای زیادی دارد.
30- کد لازم برای دادن یک فایل و تحویل گرفتن فشرده شده آن روی هارد و یا از فشردگی خارج کردن فایل آن و به همراه کدی که بین این تبدیلات فایل را با الگوریتم های بسیار پیچید (حق انتخاب با شماست) و User و Pass های امنیت را تضمین کرد.
کمتر از 10 با کد الگوریتم رمز گذاری
31- نمایش دیالوگ Save و Open و Print و... استاندارد ویندوز
2 خط کد برای هر کدام.
32- Resize پنجره های برنامه و حرکت کنترلرها در موقعیت جدید با توجه ابعاد جدید.
صفر خط! اغلب نیاز به کد نویسی ندارد!
مثلاً تمام کنترلرهای دات نت در مورد حفظ فاصله شان با طرفین قابل تنظیم هستند.
یعنی در تمام زبانها کنترلرها همواره فاصله خود را از Top و Left والد خود حفظ میکنند و اگر بخواهیم در دیالوگ Option دکمه Apply در سمت راست باشد یا در پنجره های RightToLeft بخواهیم Label سمت راست ثابت باشد، باید در رویداد Resize چیدمان را از نو انجام دهیم، در حالی که در دات نت اغلب نیازی به این کار نیست.
این را انصافاً میگم
من Visual با Basic و ++C و Assembaly کار کرده ام و در VB و ++VC تجربه ساخت پنجره را داشته ام (به کرات) واقعاً دچار سردرد میشدم و حالم گرفته میشد وقتی که پنجره ای باید قابلیت تغییر سایز میداشت و من باید برایش رویداد Resize را کد نویسی میکردم و کنترلرها را برحسب ابعاد فعلی پنجره تغییر محل میدادم، ولی در دات نت تا حالا فقط یک بار کد تغییر سایز نوشتم، آنهم چون میخواستم یک کنترل در زمان تغییر ابعاد والد نوعی خیلی خاصی جابه جا شود و دیگر بجز مورد فوق تا حالا در دات نت نیازی به کد نویسی Resize پیدا نکرده ام و تازه بیشتر هم پنجره هایم قابلیت تغییر سایز دارند.
حالا پایتون شفیق شما را نمیدانم ولی بعید میدانم بی نیاز از کد Resize باشد...
33- وب سرویس
در حد 4 الی 5 خط
توجه مهم:
نمیدانم کد پایتونی که شما نوشتید دقیقاً چه بود ولی اگر کد فوق کد راه اندازی باشد، خیلی بی انصافی به خرج داده اید براداران!!!! منظورم ان است که شما یک تابع با صدها خط کد تعریف کنید و بعد ان را در یک خط فراخوانی کنید این نمیشود کد یک خطی!!!!
واقعاً دیگه نمیدانم کدام طرف رابگم!!
بزرگترین مزیت زبانهای OpenSource قیمت و پول است!!!! نفس بشریت! که به علت آنکه ایرانی ها اصولاً پول برایشان اصلاً و ابداً اهمیت ندارد مورد فوق زیاد مطرح نمیشود!!!!
پیشنهاد میکنم به پست زیر هم نگاهی کنید که مطلب را بیشتر توضیح داده ام که در مورد ASP.Net و PHP در آنها بحث شده
forum.p30world.com/showthread.php?t=135777
forum.p30world.com/showthread.php?t=54774
سروران عزیز p30 فعلاً بای! فردا هم انلاین نیستم از شرم راحتید!:31::10: