PDA

نسخه کامل مشاهده نسخه کامل : مقايسه و بحث در مورد قابليتهاي زبان C در مقابل زبانهايي همچون Phyton



netspc
05-05-2006, 18:14
Edited by sa3er
جدا شده از:
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

**
عزيزم اول ممنون بابت زحمتي كه داري ميكشي.
در مورد پست شماره 7 بايد بگم كه:
1-هميشه نديدن به منظور وجود نداشتن نيست.(خدا رو هم نمیتونی ببینی :) )
2-ويندوزي كه جنابعالي داري كار ميكني با c و c plus plus نوشته شده
3-همون gui که شما ازش دم میزنید و python ازش استفاده میکنه بوسیله توابع low level ایجاد میشه.(توابع low level با اسمبلی و سی نوشته میشه)
4- اگر سیستم عاملی وجود نداشته باشه پیتونی هم نخواهد بود.(تمام سیستم های عامل با c نوشته شدن)
5-برای ایجاد وب سایت با زبان c دو راه وجود داره MFC ATL در visual c plus plus و یا استفاده از ISAPI در تمامی vendorها
6-خواستی پایگاه داده بنویسی از توابع ODBC استفاده کن تا بتون کتابخانه های کوچکتری مثل ADO و یا ADO.net ایجاد کنی
7- فکر کنم متوجه شدی با C میشه خیلی کارها رو کرد که python نمیکنه

netspc
05-05-2006, 18:19
راستی یادم رفت بگم
php و asp و asp.net و دیگر برنامه هایی که میبینی در وب استفاده میشوند زبان برنامه نویسی نیستند technology هستند در واقع بهتره برای این منظور نگاهی به تعاریف cgi و isapi و nsapi داشته باشی.

Bayazee
05-05-2006, 18:40
سلام
netspc و تمام بقيه دوستان من ديگه حرف هام رو تكرار نخواهم كرد پس با دقت بخونيد :
جواب نكات 7 گانه شما :
1. هر چيزي يك كاربردي داره من منظورم از نديدن اين بود يا نيست يا خيلي كمه وقته زباني مثل Php يا asp يا ... صرفا براي نوشتن صفحات وب درست شده ، خيلي پركاربرد هستش و همه جا مي توني مطالبي در موردشون پيدا كني دليل نداره با زباني كه ساخته شده براي برنامه سيستمي اون كار رو انجام بدي
2.من با ويندوز كار نميكنم ولي مي دونم لينوكس هم با C نوشته شده منهم دارم همين رو مي گم با c سيستم عامل مي نويسن . علاقه داري بسم الله ...
3.همو ن gui كه من كار مي كنم و يه بابايي با توابع سطح پايين نوشته يه جورايي لازم نيست دوباره بنويسم چون هست !!!! اگه مي خواي خودت بنويسي باز بسم الله ....
4.الحمد الله هر 2 تاش هست پس منم استفاده مي كنم و روشي رو انتخاب مي كنم كه راحت ترين و قدرتمند ترينه ...
5.كار هايي كه الان با cgi و perl و python انجام مي دن بر كسي پوشيده نيست ....
6.جايي كه MySql , linux و python هستش من نمي يام با ADO يا ... كار كنم
7 . و كاري رو سراغ ندارم كه با c بشه كرد و با python نشه چون تو هر چي تو C بنويسي من خيلي راحت از همون كد خودت تو پايتون استفاده مي كنم و انجامش مي دم .

نتيجه گيري :
دوستان و منتقدان محترم من با كسي دعوا ندارم ولي تعصب بي جا خوب نيست يادم نمي ياد گفته باشم فقط پايتون من خودم كلي با C و C++ حال مي كنم اما نه همه جا .يه جورايي بايد قبول كنيد اگه مي خواهيد يه تاپيك ديگه راه بندازيم و اونجا اين بحث رو ادامه بديم . C مشكل زياد داره به نظره من قرار نيست همه با زبان سطح پايين همه كارشون رو خودشون انجام بدن . من فكر مي كنم شما يك جور ترس از سختي ياد گرفتن يه زبان برنامه نويسي رو داريد . خوب من اصراري ندارم ولي خوب يه چرخي تو اينترنت بزنيد . به نتايج جالبي مي رسيد . گفتم همه چيز جاي خودش . نمي دونم توضيحاتن كافي هست يا نه
در ضمن فكر مي كنم يه جورايي دير مي شه پيشنهاد مي كنم هر چه زود تر بيايد تو دنياي Open Source . براي مثال فكر نمي كنم بعد چند سال شما بتونيد به اين آسوني از اين نرم افزار ها دفاع كنيد .

Bayazee
05-05-2006, 20:31
فكر مي كنم اين جمله من باعث يه سوتفاهم هايي شده . من مي گم دوره ‍C يا پاسكال و ساير زبانهاي سطح پايين به سر اومده يعني چي ؟ يه مدت قبل وقتي كسي مي خواست برنامه اي بنويسه انتخاب معمول C ، پاسكال ، بيسك و ... بود يه جورايي انتخاب هم نبود اجبار بعديش يكي از اينها بود . اون زمونا مجبور بوديم همه چيزو خدمون كنترل كنيم و همه كارمون رو خودمون انجام بديم . هنوز يادم نميره پرو‍ژه هاي چند هزار خطي رو كه گرافيك ساده و وحشتناكش رو مجبور بوديم با توابع و دستورات بسيار قدرتمند و نا مربوط اون زبانها پياده سازي كنيم . و يه جورايي به نظرم بي گاري يه نرم افزار خيلي بيشتر بود منظورم از نرم افزار ، نرم افزار سيستمي نيست . الان اگه يه برنامه پايگاه داده يا تحت شبكه يا .. به شما پيشنهاد بشه انتخاب شما احتمالا Delphi ، VC++ ، VB ، Java يا .. خواهد بود خوب يه سئوال چند سال بعد حاضري چندين ميليون تومن براي يه برنامه مثلا كامپايلر پول بدي ؟؟ اونم تو ايران ؟؟ يه ذره به ويژگي يه يه برنامه يا زبان باز متن نگاه كن و اونا رو با تجاري ها مقايسه كن مثل اينه كه يه كامپيوتر مي خري و بهت ميگن اين پلمپ شده هست در كيس باز نميشه هر مشكلي هم داشت به تو مربوط نيست و هر وقت حالش داشتيم رفعش مي كنيم و اگه ازش راضي نبودي بايد صبر كني جديدش بياد و بعد قبلي بندازي دور و دوباري كلي پول واسه يه جديدش بدي البته يه انتخاب ديگه هم داري سيتمي كه همه چيزش در دسترس هر روز ايراداش رفع مي شه و رايگان تازه خودت اگه خواست مي دوني يه جايي شو عوض كني يا خودت درست كني !!! كدوم انتخاب مي كني ؟
يه كم در مورد اين مسائل فك كني و زباهاي برنامه نويسي رو بررسي كني به عبارت Python خواهي رسيد . بهت پيشنهاد مي كنم چند تا از درسها رو دنبال كني ...
راستي حالا كه اينطوري شد تصميم گرفتم هر شب دقيقا ساعت 2 يه درس جديد اضافه كنم

sa3er
05-05-2006, 20:43
Thread Split

لطفا در صورت تمايل اينجا بحث رو ادامه بديد.

netspc
05-05-2006, 21:57
ممنون ساسر بابت divide کردن این تاپ
اما شما دوست عزیز آقای بیاضی:
اولاً خیلی زود نتیجه گیری میکنی

ولي من با وي بي شروع كردم
الان دلفي ، جاوا ، سی , سی شارپ ، وی بی دات نت ، اسمبلی، با پیتون هم وقتی تو یه شرکت مربوط به کار چاپ بود کار کردم مجبور شدم برنامه ای رو دوباره با پیتون بنویسم.
در ضمن کسی نگفت که حتماً همه با سی برنامه بنویسین جنابعالی با مقدمه ای که بر پیتون نوشتی هرکی ندونه فکر میکنه اگه پیتون نبود کره ماه فتح نمیشد.
یک چیز دیگه ای که از نوشته های جنابعالی معلومه اینه که شما فکر میکنید منظور از سی اینه شما بری تحت داس و مثلاً با quick c برنامه بنویسی نخیر عزیزم توی ms vs.net 2005 هم میتونی برنامه سی بنویسی فقط باید اینکاره باشی
روز خوش و بای

Bayazee
06-05-2006, 02:01
سلام دوست عزيزترم netspc خوب اولا اين مقدمه يه جورايي مال من نيست اينا مطالبي هستش كه از كتاب هاي مختلفي برداشته شده من سعي مي كنم اسم و لينك همه منابع رو تو تاپيك اصلي بيارم . خوب دوست عزيزم حرف من هم دقيقا همينه هر زباني جاي خودش ولي خوب الان زباني مثل Pascal فوكوس شده و همه يه آشنايي مختصري دارند اما زبان انصافا خوبي مثل پايتون ناشناخته مانده . همين كه شما مي گيد بعد از آشنايي با اين زبانهاي برنامه نويسي مجبور شدم با پايتون برنامه بنويسم نشون دهنده دو تا نكته هست :
1. شما تعداد زيادي زبان برنامه نويسي بلد هستيد و اين به نظر من هميشه خوب نيست !!! سئوال من اينه چرا ؟؟ اگه نياز بوده كه براي انجام كار هاي متفاوت يك زبان برنامه نويسي ياد بگيريد من براتون راه حل بهتري دارم كه احتمالا هم خودتون رسيديد زبان فوقالعاده سطح بالايي چون پايتون جوابگوي اكثر نياز هاي شما هستش و لازم نيست اين همه زبان رو ياد بگيرد !!!
2. آخرش شما هم مجبور با استفاده از زبان پايتون شديد !! اگه زبانهاي ديگه كامل و قوي بودند و نياز شما رو براورده مي كردند چرا از پايتون استفاده كرديد ؟؟

و اما !! خواهشا اين طور برداشت نشه كه من كشته مرده پايتون هستم ! نسبت به زبانهاي ديگه اي كه كار مي كنم مي شه گفت رو پايتون خيلي كم وقت گذاشتم و واقعا هنوز تازه كارم ولي چيز هايي ديدم كه ارزش گفتن داره . من با زيبايها و شايد مشكلات زبانهايي چون اسمبلي - ‍C - Pascal - Java - C++ - VB - PHP - Delphi , ... آشنايي دارم و خوب پايتون رو به بقيه ترجيح دادم چون فعلا جوابگوي همه خواسته هام بوده و هر برنامه اي باهاش نوشتم !! كه قبلا مجبور بودم چند تا زبان برنامه نويسي رو بكار بگيرم ووو .....

netspc
06-05-2006, 12:20
سلام
در مورد تعداد زبانهايي كه بلد هستم ، در واقع خودم خواستم یاد بگیرم چون علاقه مند به این مطلب بود(حداقل تو دوران تحصیل به درد میخوره)
اینکه هر زبانی کجا به درد میخوره؟

ببین این بحث از حالت تکنینکی خارج میشه و بیشتر الان باید در حالت مدیریت اقتصادی و اقتضایی روی اون بحث کرد.
برای مثال چرا بجای c میان شرکتهای غولی مثل kodak از python استفاده میکنند؟

چندین دلیل داره که مهمترین اون بحث مالی قضیه هست. چون اونور آب شما برای خرید یک پک کامل برنامه نویسی و مدیریت پروژه برای 1000 تا برنامه نویسی سالی حدود 500 میلیون تومان باید خرج کنی!!!! کم پولی نیست برای نمونه میتونی به محصول vs.net team edition از مایکروسافت مراجعه کنی.
خب خیلی از شرکتها پروژه های بزرگ رو از دل پروژه های بسیار کوچک میکشن بیرون اصلاً در کل همینجوری بوده و خواهد بود برای مثال روند رشد linux و یا windows را مطالعه کنید. و برای همین دلیل نداره که از اول بیان نرم افزارهای total soloution خریداری کنند ولی وقتی پروژه به سوددهی رسید مطمئناً اینکار رو میکنند برای نمونه خود ویندوز.

ولی از نظر تکنیکی :
ببین python اول از همه interperter داره و نه compiler به درد برنامه هایی میخوره که transaction کمتری دارند و بیشتر self customization هستند مثلاً بازی civ 4 تمامی action کدهای بازی با python هست ولی اصل بازی با c plus plus
البته compiler هم براش موجوده ولی در اصل برنامه مفسر هست و نه مترجم.
سرعت پایینتر اجرا و امنیت کم تر برنامه ها نسبت به دیگر تکنولوژیها از جمله دات نت
اصلاً python الان یه نسخه دات نتی هم داره و این نشون میده python اومده زیر پرچم دات نت و داره از تکنولوژیهای اون بهره میگیره.

عدم دسترسی به بسیاری از توابع winFX و یا دات نت البته در نسخه اصلی و نه نسخه دات نت آن.
و کلی معایب دیگه.
و در آخر عدم متمرکز بودن helpdesk و نداشتن IDE قوی مانند vs.net
راستی میدونی یکی از دلایلی که شرکت سان java2EE رو تولید کرد چی بود به دلیل اینکه IDE خوب نداشت و برنامه نویسان از جاوا استفاده درست نمیکردند در واقع اصلاً جا نیافتد تا وقتی که شرکت سان اومد IDE درست و حسابی را بیرون داد.
در واقع python تکنولوژی خاصی برای ارائه نداره فقط اینکه مجانی هست و تمامی ویژگیهای یک زبان خوب را دارا میباشد.

راستی در مورد اون برنامه ای که گفتم مجبور شدم با python بنویسم خب به این خاطر بود که اصل برنامه با python نوشته شده بود.
:)
خوشحال شدم و خوشحال میشم نظرات و پیشنهادات و ویژگیهای جدید python را بشنوم

Bayazee
06-05-2006, 13:32
سلام دوست عزیز و خوبم netspc
خوب دقیقا یه قسمتی از بحث منم همینه :
1.زبانهای برنامه نویسی قوی و معمولا تحت سیستم عمل مایکروسافت مشکلاتی دارند که یکی از عمده ترینشون قیمت و بسته بودن سورسش هست
2.ایران هم به زودی قراره قانون کپی رایت رو اجرا کنه
3.کسی تو ایران از این پولا خرج نمی کنه
4.به احتمال خیلی زیاد مجبوریم بریم رو اوپن سورس (لینوکس)
5.یکی از زبانهای لینوکس که استفاده زیادی هم داره (مثال : anaconda که کار نصب redhat رو انجام می ده با پایتون هستش !! ) و می شه ازش به عنوان شروع برنامه نویسی معادل (++Delphi , VB , VC) یاد کرد .
اما موضوع interpreter بودن پایتون خوب قبول داره می شه قفط تنها مشکلی که می شه واسه پایتون اسم برد کم بودن سرعت هستش که دلیلش interpreter بودنش ولی این خاصیت به خودی خود عیب نیست بلکه یه حسنه !!!
1.مثلا با یک چنین زبان اسکریپتی می توان برنامه ای را نوشت و دقیقا همان را روی پلاتفرم دیگری اجرا کرد ولی برنامه هایی کامپایل می شوند نیاز به کامپایل و یا حتی تغییراتی دارند .
2.زبانهای معروفی مثل Java و Net. هم یه جورایی از این حالت هم دارن یه همچین کاری رو می کنند (منظورم ماشین مجازی هستش )
3.رو پایتون و مفسرش خیلی کار شده و سعی شده همه مشکلات یا حل بشه یا به کمترین حد ممکنه برسه کد پایتون به bytecode یه جورایی فایل اجرایی و نا کامپایل شده (همیشه) تبدیل می شه و اینوطوری کلی مشکل سرعت کم میشه (pyc) البته می شه کامپایلش هم کرد .
منظورت رو از ' امنیت کمتر ' نگرفتم اگه منظورت سورس هستش که همش اوپنه . اگه مشکل دیگه ای باشه مطمنا می دونی زبانی مثل C چقدر جای کار داره واسه اکسپلویت و امنیتش کمه (منظورم استعدادش رو داره مثلا تابع gets ) ولی در مورد Net. اطلاعاتی ندارم و نمی دونم امنیت کدوم بهتره موضوع جالبی شد یه نگاهم می ندازم اگه تو هم مقاله ای سراغ داری خوشحال می شم بدونم .
در مورد اضافه شدن پایتون من با جمله تو موافق نیستم پایتون زیر پرچم هیچ تکنولوژی نرفته و فکر نمی کنم بره !!!
من این جمله رو استفاده می کنم :
مایکرو سافت مجبور شد از تکنولوژی اپن سورس و زبان پایتون در تکنولوژی دات نت خودش استفاده کرد اگه تو اینترنت هم چرخی بزنی خیلی به جملاتی شبه به این می رسی
پایتون یا زبانهای دیگه اپن سورس و تحت یونیکس و لینوکس دلیلی ندارند به توابع دات نت یا تحت سیستم عامل دیگه دست رسی داشته باشند (ولی دسترسی دارند !!)
اما در مورد IDE یه جند تا می شناسم Wing , PyDEV , و ... پیشنهاد می کنم Wing رو دانلود کن یکی از بهترین محیط های برنام نویسی هستش که سراغ دارم و امکانات فوق العاده ای داره
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
نمی دونم منظور شما از تکنولوژی خاص چی هستش ولی اگه یه چیزایی نداشت مایکروسافت دلیلی واسه کارش نداشت .
یه توضیح دیگه کارها و فعالیت های شما رو دیدم واقعا تبریک می گم خیلی عالی هستش . براتون آرزوی موفقیت می کنم فکر نمی کنم به خاطر کمی اطلاعاتم کمکی بتونم بکنم ولی باز کاری مثل تایپ یا ... داشتیتد در خدمت هستم
راستی اگه خواستی یه سری هم به اینها بزن :
این یه مقاله هستش با عنوان Why Python که اولی زبان اصلیه دومی ترجمه همون
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
اینم جالبه :
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
اینم یه مقایسه بین کلی زبان برنامه نویسی :
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
حالا قضاوت با شماست ....!!!

netspc
07-05-2006, 10:51
سلام
در مورد نكته 1 كه گفتي: ببين قيمت رو قبول دارم شايد يك ضعف باشه ولي اين ضغف ، ضغف استراتژیک هست و نه تکنینکی
در مورد بسته بودن کد : در دنیای حرفه ای و برنامه نویسی commercial ، طبق نظرخواهی هایی که انجام شده و آماری که خیلی راحت میتونی توی فورم های انگلیسی به دست بیاری نتیجه این بوده که برنامه نویس کمتر باید با خود کامپایلر سروکله بزنه و بیشتر به کار اصلی خودش برسه. این امر به سه دلیل هست
یک مدیریت پروژه
دو حداقل شدن مشکلات کمپانی با کامپایلر مورد نظر چون کامپایلر برای مثال برای یک شرکت دیگه میباشد و اگر مشکلاتی داشته باشد شرکت سازنده کامپایلر باید مشکلش رو حل کنه
در آخر پیشرفت سریع پروژه و متمرکز بودن بر روی هدف اصلی.
(اصلی که در دنیای لینوکس تازه در حال جا افتادن میباشد. {برنامه نویسی مدیریت شده و نه برنامه نویسی هیئتی})
نکته 2 : آینده اش همچنان مبهم هست نه اینکه اینکار صورت نگیره ولی کی و چطور اون هم مهمه؟؟؟
نکته 3:اگر قانون copy right رعایت بشه مطمئناً مدیران برای پروژه های خود ارزش قائل میشوند.
نکته 4 : ر.ک به نکته 2
نکته 5: تجربه نشون داده که اصولاً سیستم عاملهای NIX* معمولاً سیستم عاملهای بی وفایی هستند و به سلف خود بر نمیگردند برای نمونه به روند رشد و اوج گیری و افول perl و یا kylix نگاه بیندازید(البته هنوز هم استفاده میشوند ولی python هم یکی دیگر از اینگونه حربه ها میباشد).
در مورد حسن بودن مفسر python بیشتر توضیح بدهید ممنون میشوم؟ البته حسن های جانبی رو میدنم ولی در دنیای واقعی؟؟؟؟

در مورد اینکه این برنامه ها رو میشه روی همه paltformها اجرا کرد خب به این دلیل هست که script based هست و شما باید interperter مخصوص اون سیستم عامل را داشته باشی و اینکه سرعت و امنیت رو باید از دست بدی.(مانند php و asp)
در مورد byte code بودن فایلهای python بسیار ابتدایی اینکار را انجام میدهد حداقل در مورد تکنولوژیهایی مانند java و دات نت.
و در ضمن تکنولوژی که مخصوص به مایکروسافت که در دات نت استفاده میشود به گونه ای میباشد که با یکبار اجرای برنامه این برنامه در جایی بنام ga ذخیره شده و در دفعات بعد فقط جاهایی از کد که اجرا نشده کامپایل میشود بقولی flexiable compiler میگویند.

در مورد اینکه python از اسم دات نت بهره جسته هیچ شک نکن . چون در مستندات مایکروسافت جایی رو پیدا نمیکنی که از پروژه python حرفی زده باشه و بگوید ما python را بصورت دات نتی! کردیم
محض اطلاع الان بیش 30 زبان برنامه نویسی از تکنولوژی دات نت بهره میگیرند (کاری که شرکت سان در مورد جاوا نکرد)
و اینکه CLR مایکروسافت و dot net framework یک پروژه میباشد که بر اساس اون شما میتوانید زبان برنامه خود را ایجاد کنید و از تکتولوژی دات نت استفاده کنید (همانکاری که python کرد)

اینکه python دلیلی نداره به توابع ویندوز دسترسی داشته باشند ناقض حرف شما در مورد cross platform بودن python هست.
چرا که امروزه ویندوز xp بیش از 300 سرویس و تکنولوژی آماده را در خود جای داده است آیا این کاستی یک زبان برنامه نویسی نیست که نتواند از این تکنولوژیهای استفاده کند؟؟؟؟؟

در مورد IDE که گفتی wing بابا این هم که فروشیه ;)
خب بزار یه بررسی اجمالی از IDE مخصوص دات نت داشته باشم.
ببین دات نت برای خود مایکروسافت هست.شرکت مایکروسافت هم در بسیاری از تکنولوژیهای سردم داره و یا حداقل دستی بر آتش داره برای نمونه در زمینه دیتابیس 4 محصول تجاری بنامهای access,fox pro,sql server,ms crm شما در IDEمخصوص دات نت این اجازه رو داری که خیلی راحت queryهای خودت رو بنویسی و همانجا debug کنی و همانجا دیتابیس خودت رو تغییر بدی.
در مورد تکنولوژی XML قبلاً کسایی که با XML زیاد سروکله میزند حتماً نام altova XML به گوششون خورده بود! ولی الان دیگر نیازی به خرید محصول جدا برای کار با XML نیست در محیط دات نت همین کار انجام میشه.
دسترسی به تمامی سرویسهای سیستم عامل در خود IDE انجام پذیر است.
دسترسی به تکنولوژی WMI که یکی از قویترین بسته هایی هست که از طریق اون میتونی تمامی سخت افزارهای کاربران رو کنترل کنی.
بی نیاز شدن به محیطها طراحی وب چرا که خود IDE همین محیط را به شما میدهد (البته با محیطهای طراحی گرافیکی اشتباه گرفته نشود)
دسترسی به بیش 3000 کلاس آماده به کار و تست شده اعم از شبکه و سیستم عامل تا توابع ریاضی
هوشمند بودن IDE به گونه ای که در هنگامی که کلاسهای چند شکلی ساخته میشود میتواند تمامی sub classها را طبقه بندی کرده و تمامی خواص را به درستی assign کند.(خصوصیتی که در VS نبود)
و ....
ولی در مورد wing این خصوصیاتی بود که در سایت نوشته بود:

Syntax highlighting
Emacs key bindings
Block indentation
Indentation guides
Adapts to file indent style
Adapts to file EOL style
Block commenting
Rectangular selection
Brace matching
Visible white space
Detect and load external changes
Printing
Editor splits & tabs
Keyboard and command macros
Code folding

Code Intelligence Features
Goto-definition
Source index menus
Auto-completion
Auto-indent
Code-aware line wrapping
Error indicators
Indentation translator
Class browser
Module browser
Current file browser
Call tips & documentation (Source Assistant)

Search Features
Search manager
Keyboard-driven mini-search
Incremental search
Toolbar quick search
Multi-file search
Disk search
Regex and wild card search

Debugger Features
GUI, Web, and script debugging
Remote debugging
Native console I/O
Exception traceback reporting
View locals/globals
Detect unhandled exceptions
Support input() and raw_input()
Zope and Plone support
Integrated debug process I/O
Alter debug data values
Interactive debug probe
Track values by reference
Evaluate expressions
Conditional breakpoints
Ignore-counted breakpoints
Enable/disable breakpoints
Process attach/detach
Inspect sys.modules

Other Features
Project Manager
Supports Python 1.5.2 and 2.0 through 2.4
Integrated Python shell
Customizable user interface
Create multiple tool instances
Graphical preferences editor
Integrated searchable documentation
Integrated feedback / bug reporting
CVS Integration
Templating / Code Snippets
Extend IDE with Python Scripting
Available product source code

میبینید که فقط برروی syntax کار شده ولی مشکل syntax در محصولات VS مایکروسافت حل شده بود و الان IDE مایکروسافت خود یکی پر ارزشمندترین داراییهای مایکروسافت به حساب می آید.

و در آخر در مورد امنیت:
ببین منظور برنامه نویسی exploit و یا سو استفاده و عدم جلوگیری از آن نیست.
در کل در زبانهای برنامه نویسی امنیت رو میشه به دو شاخه اصلی تقسیم کرد:
1- استفاده از امنیت
2- ایجاد امنیت

در مورد شاخه اول : منظور از ظرفیتهای موجود سیستم عامل در مورد امنیت میباشد برای مثال دات نت کاملاً با AD یکی شده و بصورت کامل از آن پشتیبانی میکند .
حتی در ایجاد کلاسهای آماده شما بوسیله assembly control panel میتوانید دسترسی برنامه نویسان را به برخی از کلاسها محدود کنید.
در مورد Global Cache این کاشه بصورت کاملاً امن بوده و هر کار بر GC خود را دارا میباشد.

در مورد شاخه دوم ایجاد امنیت:
بوسیله توابع بسیار زیاد و آماده اعم از شبکه و AD شما میتوانید محیطهای شبکه و کاری خود را بیش از بیش امن کنید.
برنامه هایی که تحت وب نوشته میشوند میتوانند بصورت DLL و یا همان Inline کامپایل شده تا دیگر کسی به سورس کد آن هم دسترسی نداشته باشد البته میتوانید محدودیتهای ADرا هم اعمال کنید.

خسته شدم :)

Bayazee
08-05-2006, 01:19
سلام دوست عزيز netspc
فكر مي كنم دعواي ما سر يه موضه پايه اي و اساسي هستش و اونم بحث اوپن سورس هستش . ببينيد قيمت يكي از مشكلات هستش من قبلا يه مثالاي زدم كه البته يه جورايي از نظر خودم هم نمي تونه دليل قاطع باشه !!! من نمي تونم از سيستم و كلا چيزي استفاده كنم كه ندونم توش چيره و اين اجازه رو نداشته باشم كه تغييرش بدم . من حرف خود شما رو واسه خودتون تكرار مي كنم . از كجا معلوم يهويي بيل گيتس عشقش بكشه و يه تغيير عمده تو نرم افزارش بده يا اصلا ديگه ادامه نده . ولي يه پروژه اپن سورس مال همه هستش .
و اما در مورد پروژه هايي شبيه يه خانواده unix با نظر شما موافق نيستم . به نظرم اپن سورس هر دو جنبه مديريتي و برنامه نويسي جمعي رو داره و خيلي زيركانه و خوب داره ازش استفاده مي كنه . يه مثال :
مطمئنا با طرح سيستم عامل ملي آشنايي داريد . نمي دونم سري به اين آدرس زديد يا نه ؟؟
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
(به قیمت ها توجه کنید !!)
توجه كنيد و ببيند چه سرمايه گزاري براي (از نظر بنده) فارسي سازي يه پروژه هزينه مي شه آيا واسه ويندوز و نرم افزاري بر پايه اون يه همچين كاري انجام مي شه ؟
نه !! چون سورسش نيست !! اين هزينه به نفع كيه ؟؟ هم شركت صاحب اون نرم افزار ، هم كاربر ، هم برنامه نويس ،‌ هم كشور !!!! و اينطوري هستش كه نرم افزار باز متن كار افراد بسيار زياد با سليقه هاي متفاوت هستش و از جهاتي به دقت كار مديريتي هم روش انجام مي شه و اينطوري نيست هر كي از راه رسيد يه جايي از برنامه رو عوض كنه . يه نمونه از كار مديريتي امسال فدورا 7 روز دير ريليز شد !! دليل : منتظر بودن Gnome جديد بياد و اونم اضافه بكنند ولي ويندوز چي ؟؟ يهويي چند سال سيستم عامل خودش رو كه كلي واسش خرج مي كنه و ادعاش هم مي شه رو دير بيرون مي ده !! يه مقايسه اي كن بين نرم افزار هاي مشابه IE و FireFox – IIS و Apache ..... به نظر من اصلا قابل مقايسه نيستند !! اين حرفهام در مورد نظر شما در مورد كامپايلر هم صادق هستش . چون مال شركت خاصي نيست يه كامپايلر رو كه مي تونه قيمت واقعيش چندين هزار دلار باشه اونطوري كه مي خواد تغيير بده و بهينه استفاده كنه .
در مورد كپي رايت شكي نكن بزودي اجرا مي شه و واسه همه خوبه مخصوصا برنامه نويسي هاي واقعي . اگه اينطوري بشه مديران به پروژه ها ارزش مي دن اما مردم و كاربرا چي ؟؟ الان از آدماي معمولي دورو برت كسي رو مي شناسي ؟؟
حرفت در مورد بي وفايي يونيكس و تكنولوژي مانند perl تا حدودي درست هست ولي دليلش پيشرفت فوق العاده سريع اين گونه از فناوري ها هستش (همون جريان اپن سورس) مثلا پايتون رو به پرل ترجيح مي دن . مثل تكنولوژي تجاري نيست كه تا وقتي عوضش نكنه همونه و مجبوري باهاش استفاده كني و ديگه اينكه كاملا رقابتي هستش . چون امكانانت پايتون از پرل بيشتره اونو از دور خارج كرده . يا وقتي محتط و زباني مثل C++ و Qt هست كسي نمي ره سراغ Delphi و kylix و الاخر ...
در مورد پورتابل بودنش خوب پايتن خيلي راحت با ماشين مجازي كه جاوا هم از يه چنين چيزي (يعني عيب نيست !!) استفاده مي كنه روي هر سيتمي اجرا مي شه ولي دات نت چي . bytecode پايتون اصلا ابتدايي نيست چرا اين عقيده رو داريي ؟؟ جاوا زبان پدري پايتون هست پس بعيد نسبت به پايتون (در مورد bytecode) پايين تر باشه .پايتون هم دقيقا همينطوري هستش با پايتون مي شه صفحات وب رو هم طراحي كرد باري اين منظور براي مثال مي توان از تكنولوژي Psp (Python server page) استفاده كرد كه دروني سازي كد پايتون با html هست كمتر زباني سراغ دارم كه اينطوري همه كاره باشه حتي همه كاره تر از زباني مثل جاوا !!!
و اما من هيج جايي از مستندات پايتون نديدم نامي از دات نت باشه ولي حتي تو msdn هم نامي از پايتون پيدا مي شه !!!
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
دات نت پايتون رو به مجموعه (ناقص)خودش اضافه كرده پس بايد در مستندات دات نت بايد دنبال اسم ironpython و python بگردي (سري به سايت مايكروسافت بزن و يه جستجويي بكن )
اين حرفتون رو هم كه 30 زبان از تكنولوژي دات نت بهره مي گيرند !!! اصلا قبول ندارم چرا شما همه چيزو سرو ته مي بينيد !!! وقتي يك چيز حتي كلي يه موجوديت (نه صرفا جزي و ناچيز رو) كامل رو درون خودش جايي مي ده و استفاده مي كنه از اون بهره مي بره نه اوني كه استفاده شده از استفاده كننده !!!!! جاوا هم به اندازه اي كامل هست كه داره با دات نت رقابت مي كنه !!!
پايتون از CLR و dot net framework استفاده نكرده !!! اين حرفها اصلا درست نيست و كاملا غلط هستش . هنوز پدر دات نت هم نبود داشتن تو پايتون برنامه مي نوشتن !!! (پايتون 15 سال پيش بوجود اموده ها !!!)
اگه توجه مي كرديد در داخل پارانتز نوشتم كه پايتون از توابع ويندوز استفاده مي كنه و منظورم همون cross platform پايتون بود ولي در اصل دليلي نداره مگر سرويس دهي به كاربران ويندوز !!!
نه به نظر من استفاده نكردن از سرويس و تكنولوژي آماده ويندوز اصلا هم براي زباني مثل پايتون كاستي نيست چون اون سروس با اون همه بگ و مشكل به درد همون مايكرو سافت و ويندوز مي خوره !!! پايتون و لينوكس تكنولوژي هاي بسيار كامل تر و پيشرفته تر ي نسبت به ويندوز و زبانهاي تحت آن دارند . آمار اينترنت هم حرف من رو تكرار مي كنند ...
من احتمال مي دم شما با برنامه نويسي تحت لينوكس آشنايي نداريد . تو لينوكس همه چيز همه كاره هست !! خيلي راحت تو محيط Qt به هر پايگاه داده اي كه خواستم (حتي تحت ويندوز) وصل ميشم و يه demo مي سازم تبديلش مي كنم به سورس پايتون و بدنه اصلي برنامه رو مي نويسم (خيلي راحت ...) البته در حالت معمولي هم مي شه .
و ديگه اينكه باز كلاس هاي پايتون را دست كم گرفتيد . يكي تز غني تريد توابع كتابخانه اي دنيا رو داره ( چون از كتابخانه هاي C++ ، Javaو خودش) استفاده مي كنه
در مورد امنيت ما نيازي به پنهان كردن كد برنامه نداريم چون بر اين باوريم اينطوري امنيت حفظ نمي شه (اينجا جا داره از ويندوز تشكر كنم چون اين قضيه رو اثبات كرد !!!) امنيت يه جور ديگه بايد تامين بشه !! در ثاني با پايتون هم مي شه برنامه تحت وبي نوشت كه كد هاش server side و كاملا پنهان هستش .
حتما تونستی یه سری به اینا بزن :
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

netspc
08-05-2006, 10:58
سلام
ببين من با open source مخالفتی ندارم (برای اثبات حرفم میتونی یه سری به پروژه ای که داریم بزنی).
ولی open source باید کنترل شده باشه یعنی همه چی سر جای خودش چون یکی از دلایل که برنامه نویسا رغبتی برای نوشتن برنامه ندارن بطور کامل باز بودن همه چیز هست.
حتی شرکت redhat سورس کد linux eterprise server رو بیرون نداده و این نرم افزار رو به قیمت بسیار گزافی میفروشه ( فکر کنم دلیل خوبی برات آورده باشم که بفهمی همه چیز open sourceش گیر نمیاد)

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

در مورد اینکه روزی بیلی جون نگه من دیگه نمیخوام ویندوز تولید کنم و حال ما باید چکار کنیم:

ببین این فرض در دنیای واقعی یک شوخی محسوب میشه :)


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

چرا که لینوکس دارای چندین محیط gui بوده و این امکان همیشه هست که یکی از این محیطها حذف شود کما اینکه اینکار بارها و بارها انجام شده و باعث سردرگمی بسیار از کاربران commercial میشود :laughing:

ممنون میشوم یک محصول کاملاً مدیریتی و کنترل پروژه و workflow مجانی در لینوکس به من نشون بدی تا من بتونم حرف شما را در مورد مدیریت و برنامه نویسی جمعی زیرکانه باور کنم. ;)

منظورتون از مقایسه IE و FireFox چی هست؟
firefox بسیار مشکل دارد و یک پروژه ای میباشد که اگر اشتباه نکنم از 2002 شروع شده ولی IE از سال 1993 تقریباً 10 سال قبل از FireFox و شما انتظار دارید نرم افزاری که 10 سال بعد بوجود آمده همان مشکلاتی را داشته باشد که IE در بدو ورود داشت؟؟؟؟؟؟
این حرف شما دقیقاً مانند این میباشد که شما بگویید من از اول که دنیا آمدم همینجوری بودم.

IIS و apache را چه منظری مقایسه میکنید؟
از منظر امنیتی هر دو در یک سطح از امنیت بوده و امنیت بیشتر را فقط با نرم افزارهای جانبی و یا سخت افزارهای جانبی میتوانید مهیا کنید.
از نظر کارایی و flexiable بودن IIS نشون داده که هم کاربر پسند تره و هم اینکه مستندات بهتری نسبت به apche برای گسترش نرم افزارهای جانبی داره.آیا واقعاً شما منکر مستندات جامع و کامل محصولات مایکروسافت میشود؟؟؟؟

در مورد بی وفایی unix based آیا واقعاً فکر میکنی دلیلش پیشرفت سریع تکنولوژی هست؟؟؟؟؟ شما واقعاً برنامه نویس هستید و یا یک تازه کار سه آتیشه لینوکس که اصلاً هیچی از لیونکس جز کلمه open source نشنیده؟؟؟؟؟؟

در مورد cross platform بودن دات نت ، در حال ساخت ماشینهای مجازی بر روی انواع سیستم عاملها میباشد
ولی برای برخی از سخت افزارهای این محیط آماده شده و در حال استفاده است مانند پردازنده های ARM .

در مورد IronPython این بابا قبلاً خودش کار میکرد همین الان هم داره همین کار رو میکنه اینم آدرس سایتش :

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

ولی ممنون بابت اطلاع رسانی که کردی.


ممنون میشم منظورت رو از مجموعه ناقص دات نت بدونم؟؟؟؟؟؟ چون بعنوان یکی از محصولات total soluotion در جهان مطرحه !!!!!!!!!!! راستی اینو از من داشته باش خیلی سریع در مورد همه چیز تصمیم نگیر چون ممکنه مجبور بشی معذرت بخواهی :happy:

در مورد بیش از 30 زبان متاسفانه آدرس وب سایت رو گم کردی ولی برای نمونه:
efiel.net
perl.net
python.net
delphi.net
BC#.net
......

اینها پروژه هایی هست که بوسیله افراد و یا شرکتهایی بصورت indiviual انجام میشه و هیچ ربطی به مایکروسافت نداره! دوباره IronPython رو پیرهن عثمون نکنی :laughing:

در ضمن من نگفتم python از CLR استفاده کرده گفتم Python.net .
در ضمن 15 سال پیش پیتون فقط یک زبان script based ساده بود اگر byte code رو اون اختراع کرده پس چرا شرکت سان رو همه میشناسن؟؟؟؟؟؟؟؟؟؟
python وقتی python شد که مجبور شد از توابع c و java هم استفاده بکنه!!!!!!!
که اینکار در محصولات دات نت بصورت کامل و دقیق و تازه قدرتمندتر شده انجام پذیرفته.

محض اطلاع در ویندوزهای نسل آینده به این راحتیهای نمیتوانید از توابع API استفاده کنید چون هم system file در حال تغییر است و هم system structure ویندوز (عرض تبریک به زبانهای سلف مانند VB,Perl,Python)

اینکه زبانی نتواند از سرویس های یک سیستم عامل استفاده کند عین کاستی میباشد برای مثال در زمینه RDP اگر لطف کنی یک تابع درست و حسابی API که با سرویسهای پایه ویندوز هم کار نداشته باشه به من نشون بده :cool:

منظورتون از نظر تکنولوژی برتر لیونکس بر ویندوز چیه؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

در مورد اینکه من در لینوکس برنامه ننوشتم :
خیلی زود نتیجه گیری میکنی:)


در مورد اینکه به ویندوز و دیتا بیسهای مربوطه وصل میشه این قابلیت ویندوز هست که به شما اجازه یک چنین کاری رو میده و نه قدرت لینوکس ولی در محیطهای AD مطمئناً این قابلیت از شما سلب شده هست مگر اینکه مراحل authentication رو بگذرونید.

در مورد PSP و یا ASP و یا PHP و دیگر تکنولوژیهای معروف باید بگم asp.net یک invoative به حساب میاد چرا که شما میتوانید برنامه های تحت وب را همانند برنامه های desktop ایجاد کرده و دیگر آن اسپاگتی کدهای معروف شما را اذیت نکند.
(بهتره کمی با این محیط کار کنید بعد نظر بدهید)



در مورد شبکه های توزیع شده و مدیریت آنها اخیراً redhat مبادرت به ساخت یک سیستم دایرکتوری کرده است :)
کاری که مایکروسافت در حدود سال 1998 شروع کرد و سردم دار آن سیستم عامل ناول درسال 1994 میباشد :rolleye:
آیا هنوز هم اعتقاد دارید لینوکس تکنولوژی برتر هست و در ضمن قیمت را فراموش نکنید و در ضمن هزینه پیاده سازی و نگه داری را مد نظر داشته باشید.

یک چیز را در مورد ایجاد فرصتهای شغلی :
برو به سایت monster.com و در آنجا آمریکا رو انتخاب کن(به این دلیل که اونجا همه چیز هست) و بعد در قسمت search بزن RHCE و تعداد جوابها رو یادداشت کن و حال یه سرچ برای MCSE هم بزن و جوابها رو مقایسه کن.
خودت متوجه خواهی شد که فرصتهای شغلی مایکروسافت در حدود 20 برابر بیشتر از فرصتهای شغلی لینوکس هست :)

جالبه بدونی بیش از 15 میلیون از انسان با مدارک مایکروسافت نون میخورند.
حال باز دوستداشتی همه چیز رو open source کن :cool:
ببین اگر پروژهایی مثل ویندوز در کار نبود کسی مثل لینوس توارلدز هم وجود نداشت که بیاد پروژه open source راه بندازه چون معمولاً رقابت جایی بوجود می آید که حرفی برای گفتن باشه و چیزی باشه که کسی ازش چیزی ندونه!
ولی اگر فرض کن همه به جای ویندوز از لینوکس استفاده میکردند و اگر همه برنامه ها بصورت open source بود آیا واقعاً تجارت وجود داشت؟ آیا واقعاً کسی رغبت میکرد برنامه بنویسد؟

پس همین پروژه های open source باید ممنون پروژه های secret مثل ویندوز باشند.
(امیدوارم که بفهمی چی میگم)

در مورد mysql واقعاً فکر میکنی این بانک اطلاعاتی در محیطهای enterprise جواب میده؟؟؟؟؟؟؟؟؟/ :blink:

netspc
08-05-2006, 11:00
راستي يادم رفت بگم نگفتي interperter پیتون چه میزیت اضافه ای نسبت به دیگر interperterها داره؟؟

Bayazee
08-05-2006, 18:54
سلام
شرمنده که یه کم زیاد شده !!!
من فکر می کنم مشکل ما اساسی هستش . منم نمی خوام زیاد باهات بحث کنم و منتظر زمان می مونم تا همه چیز رو ثابت کنه !! شاید هم حق با شما بود . مهمتری دلیل پولی بودن enterprise گارانتی محصول هستش و یه نرم افزار تجاری از لینوکس . در ثانی من سوار ماشین می شم چون 2 ثانیه می شه توشو باز کرد و دید داخلش چیه !! یه ذره بیشتر دقت کن . و با نداشتن این طرز تفکر خیلی ها (مثلا م ایرانی ها جا موندیم ) شما اصلا به حرفهای من توجه ندارید خوب افرادی که از بسیاری از ابزار ها استفاده می کنند بدون اینکه بدونن چطور و چکونه ساخته شده و توش چی هست کار درستی رو انجام نمی دنن . اون وقته که حال روزش تبدیل می شه به جامعه مثل جامعه ما !!! فقط شدیم مصرف کننده . توش چیه ؟؟‌ به تو چه !!!! استفاده تو بکن !!!
در مورد تولید نشدن ویندوز نه همیشه که قرار نیست تولید نشه . مثلا یهویی ویندوز گفت دات نت !!! کسی تونست بگه نه ؟؟؟ همه مجبورید به ساز مایکروسافت برقسید !!! (منظورم این بود)
در مورد سرمایه گزاری : تو خرج کردن پول توسط مایکروسافت (مخصوصا واسه تبلیغ نرم افزار های خودش و از دور خارج کردن رقبا !!) شکی نیست !! اما نتیجه ؟؟!! همه شاهدن که فارسی تو ویندوز کلی مشکل داره و هنوز ویندوز (برای مثال xp) از تقویم و اکثر قابلیت های فارسی پشتیبانی نمی کنه !!
ببینید بحث سر مقدار پول خرج شده نیستش بحث سر نوع و چگونکی خرج شدن !! یونیکس و خانوادش استعداد سرمایه گزاری توسط همه رو دارند . این یه مثال کوچولو بود برو یه سری بزن ببن یواش یواش کشور هایی مثل ( برزیل – آلمان – آفریقای جنوبی و ... ) دارن کل سیستم اداریشونو به لینوکس تغییر می دن .
در مورد دارا بودن چندین شکل متفاوت از یک موجودیت !!! این به هیچ وجه عیب نیست . این باعث رقابت می شه و هر کدوم بهتر باشه اون یکی رو از دور خارجه می کنه !! ولی شما چی !!؟؟ آیا حق انتخاب دارید !!!!!
یه سری به CVS های موجود و یا سری به سایت sourceforge بزن به کلی جواب خواهی رسید ! مثلا نرم افزاری مثل Qt الان مدیران این پروژه کارشون شدن کار بر روی ایده های بسیار زیاد و ابتکارانه از سراسر دنیا . کنار هم گذاشتن بخش های آماده و ارتقا اصولی و هدفمندش (یعنی ممکنه بنا به دلایلی یه ایده تاثیر داده بشه یا تغییر کنه یا لحاظ نشه ) و من به این می گم زیرکانه !!! یعنی از همه جا برنامه نویسانی رایگان دارن برای این شرکت برنامه می نویسن ( که البته مزایایی واسه برنامه نویس داره که مهمتر از پوله مثلا وارد شدن اسمش به لیست برنامه نویس های اون محصول‌)
خوب اینترنت یه جستجویی بکن و به تعدادی آمار سر بزن افول کامل IE رو در مقابل FireFox خواهی دید . IE یه نرف افزاری پر از حفر های امنیتی هستش که امکاناتش هم خیلی کمتر از فایرفاکس هستش . (منبع : خود مایکروسافت !!! IE7 بیرون نیومده باعث آبرو ریزی مایکروسافت شد که حتما در جریان بودی )
IIS و Apache اصلا قابل مقایسه نیستند کافی یه نگاهی به تعداد استفادشون و آمار نوذشون بندازی . در ثانی یادت باشه مستندات هیچ وقت نشون دهنده جامع کامل و خوب بودن یک نرم افزار نیست !!
در مورد مثلا بی وفایی یونیکس من اینطوری فکر نمی کنم ! اینطوری ثابت شده وقتی یک تکنولوژی وارد می شه همه فناوری های ضعیف تر قبل خودش رو از دور خارج می کنه !! حالا اگه تو دنیای ویندوز اینطوری نیست ( چون همش ماله یه شرکته و کسی رقابت نمی کنه ) ربطی به دنیای اپن سورس نداره !!
در مورد برنامه نویس بودن من نه عزیز من خودم رو برنامه نویس نمی دونم !! و ادعایی ندارم ! ولی تازه کار نیستم یه مدتی هست که مشغولم . ببینید تا وقتی که با ویندوز کار می کنید نمی تونید مثل من فکر کنید . (راستی طرفدار سه آتیشه هر چیزی هستم که ارزشش رو داره !!)
و اما مطرح بودن دات نت در جهان اینها فقط تبلیغات پر خرجی هستش که از طرف مایکرو سافت انجام می شه !
در مورد 30 زبان باز دقت نکردید !!! لطفا با دقت بخونید !!! عزیز من دات نت داره از این تکنولوژی ها سود می بره و استفاده می کنه این حرفو قبول داری یه نه !! دات نت که نیومده perl رو درست کنه فقط شاید با کمی تغییر بخواد ازش استفاده کنه و بهره ببریه . مطلب واضحی هست نمی دونم چرا شما اینطوری برداشت می کنی که perl , delphi , python .... دارن از دات نت استفاده می کنن !!
همین حرف شما که گفتید نمی شه در نسل آینده ویندوز نمی شه از API استفاده کرد یه ضعف هستش ( قبلا توضیح دادم مجبورید به سازش برقسید !!)
بله این که زبانی نتواند از سرویس های یک سیستم عاملاستفاده کند عین کاستی است مثلا دات نت نمی تواند در سیستم عامل های خانواده unix , mac و ... اجرا شود (می دونی که فعلا MONO نتونسته این خلا رو پر کنه !!) ولی ....
نه اصلا من با ویندوز کاری ندارم . تو لینوکس می شه هر نوع پایگاه داده ای تعریف و استفاده کرد (حتی از تکنولوژی متعلق به مایکروسافت مانند access , .... )
دوست عزیز اسپاگتی کد رو واسه برنامه های ساخت یافته مانند C , VB , .... به کار می برند !!!!
پیشنهاد می کنم یه کم دنبال امکانات لینوکس (مثل سرور ها – LDAP .... ) بری ...
در مورد فرصت شغلی : به نظرم آینده خیلی مهمتر زیاد رو حال فکر نکن !!
در مورد قیمت و هزینه نگهداری هم که حق با من هستش !! بخوای یه سرور با امکانات کامل راه بندازی کلی خرج رو دست می زاره که !!!
در مورد database فکر نمی کنم پایگاه داده های مایکروسافت مثل اکسس در مقابل mysql حرفی برای گفتن داشته باشن !! من مورد حرف مقایسه این دو مورد بود . وگر نه شاید مواردی مثل اوراکل .. شاید بهتر از MySQL باشند .
اینم یه مقایسه بین C# , VB.net , Python
C#
C# is a relatively new object-oriented programming language very similar to Java and is one of the four built-in languages for the .NET Framework by Microsoft. The Mono Project has also implemented much of .NET for other Operating Systems, such as Linux, BSD and OS X. It may addresses many of the shortcomings of C++, and a few of Java. C# may be perceived as a vendor-specific language, even though a standard for the language exists.

Visual Basic .NET
While Visual Basic .NET retains most of the keywords that define the Visual Basic language its structure has been altered considerably. Within the .NET Framework it has become a powerful and flexible language now implementing true object-oriented design and threading amongst other enhancements. While it is still largely limited to the Windows platform the Mono Project does support it on Linux.

Python
Python has a very clean and readable syntax and is run through an interpreter, which makes it easy to play with small examples. Python is used for many real world, large scale projects such as MayaVi and Zope, and has been employed by organizations such as NASA for coordinating large banks of computers--a task Python has proven well-suited for.

همونطور که می بینید دات نت تکنولوژی یا کار خاص و شاقی نبوده فقط استفاده از ایده های (شرکت هایی چو سان و ... ) بوده بعلاوه امکاناتی که با توجه به ثابت ماندن تکنولوژی برنامه نویسی مایکروسافت انتظارش می رفت . یه جو رایی می شه گفت همون تکنولوژی هست با کمی تغییر !!! در دنیای باز متن داستان یه جور دیگه است . این ورا کلی زبان برنامه نویسی (ada , haskell , perl , python , ruby , tcl , prolog , scriptol , Scheme و ....) هستش و کلی ابتکار و نوآوری برای مثال تکنولوژی slot , signal مربوط به Qt که جایی نظیر نداره و از جایی کپی نشده .
راستی من چند درس دیگه هم نوشتم و همشو به pdf تبدیل کردم ولی متاسفانه نمی تونم با مدیر انجمن تماس داشته باشم . آیا سایت فضایی رو به این فایل ها اختصاص می ده یا نه . راستی اگه علاقه داشتید ادامه آموزش ها رو دنبال کنید . البته اوایل براتون می تونه تکراری باشه . مرسی
و اما در مورد مفسر پایتون شاید در روزای آینده مفصا در موردش نوشتم .
مفسر پایتون ویژگی خاص و جدیدی نسبت به مفسر های دیگه نداره که قابل بحث باشه یا شاید من اطلاع ندارم . ولی امکاناتی مانند توانایی اجرای مستقیم اسکرپتهای دیگری مانند Tcl – حالت محاوره ای – امکان اجرا از درون برنامه دیگر مثلا Emacs و ...
یه تفاوت هایی هم هست برای مثال :
زمانی که یک ماجول در پایتون دوباره بارگزاری (لود) می شود متغییر های از قبل تعریف شده و مربوط به ماجول (reload) شده از بین نمی رود (ولی در اکثر مفسر های دیگر متغییر تغییر می کند مثلا به موجودیت جدید اشاره می کنند ) حالا نمی دونم که عیب هستش یا نه . ولی احتمالا یک چنین تغییر (برای مثال Ruby اینطوری نیست ) دلیل منطقی داشته . یک مثال :
import b
()x=b.B
()x.p
B
اکنون فایل b.py رو تغییر می دیم . و دوباره لود می کنیم .
(Reload(b
()x.p
B
همونطور که می بینید متغییر تعریف شده تغییر نکرده !!
()y=b.B
()y.p
BBBBBBBBB
در حالی که یک نمونه جدید از همون شی نتیجه جدیدی داره این مثال برای mod_python هم صادق هستش .
دلیل این کار اینه که زمانی که پایتون یک ماجول رو لود (یا reload ) می کنه یه جای ویژه تو حافظه بهش اختصاص می ده و هر متغییر ایجاد شده مرتبط با ماجول به آدرس قسمتی از کد وابسته می شه (اشاره می کنه ) و این بدین معنا هستش که در لود مجدد کلاس B به نکته دیگری از حافظه اشاره می کنه ولی هنوز متغییر های از پیش تعریف شده مقدار خود را حفظ می کنند و ماجول قدیمی امکان دارد در حافظه باقی بماند !!! برای مثال احتمالا عبارت :
__x.__class__ is y.__class
مقدار false را برگرداند . ولی زبانی مانند رابی کلاس را مجدد تعریف کرد و تمام متغییر های قبلی را تغییر می دهد
این موضوع برا من جالب بود . سعی می کنم یه مقاله جدا در مورد مفسر (ماشین مجازی ) پایتون بنویسیم

پیش نهاد می کنم سری به سایت زیر بزنید و یه جستجوی کوچولو تو گوگل انجام بدید و کمی وقت بزارید ...
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

eh_mn
08-05-2006, 18:57
سلام دوستان.
از بحث شما خیلی استفاده کردم. تاپیک بسیار خوبیست.

باز هم متشکرم.

netspc
09-05-2006, 10:48
خب بحث open source بودن و یا نبودن را دقیقاً آینده مشخص میکند.
و من هم نیمخوام دیگر حرفها رو تکرار کنم چون خیلی واضح گفتم که الان شما هرکاری بکنید (بالا برید ، پایین بیایید)
مایکروسافت فعلاً برنده این بازی هست و هیچ شکی در این نیست(به فرصتهای شغلی بیشتر توجه کنید).
در اینکه برای مثال شما میگویید فرصتهای شغلی امروز را نبین ، به آینده فکر کن منو به یاد یک مثل می اندازه:

" بزک نمیر بهار میاد ، کمبوزه با خیار میاد"

:laughing:

در مورد قیمت ببین این لیست قیمت رو همین امروز گرفتم:
Red Hat Linux AS 4 Standard for x86 قیمت 1399 دلار
microsoft windows 2003 R2 standard for x86 قیمت 999 دلار

در مورد یک مهندس پشتیبان برای لینوکس یک شرکت در آمریکا سالانه چیزی در حدود:
75000 دلار تا 90000 دلار خرج کند
در مورد یک مهندس پشتیبان برای ویندوز یک شرکت در آمریکا سالانه چیزی در حدود:
60000 دلار تا 75000 دلار باید خرج کند.
منبع monster.com
(البته این قیمت برای یک شرکت با سقف 1000 کاربر هست )

پس میبینی که هم قیمت اولیه بالاتر رفته و هم هزینه نگهداری و این خدعه open source که میبینی یکی دیگر از خدعه های سرمایه گزاران بزرگه برای اینکه وقتی در آینده مایکروسافت بخواهد به حرف سیاست مداران و سرمایه دارن بزرگ توجه نکند.
نتیجه : پس شما هم مثل من نیرنگ این بازی را خورده اید ولی به نحوه دیگر و سنگ کسی را به سینه میزنید که امکان دارد پشت پرده و با رانت های میلیارد دلاری از بازار خارج شود :ohno:
پس من مانند بسیاری از انسانهای عاقل دنیا حال را با دو دست چسبیده و به آینده مبهم open source هیچ کاری ندارم (البته من منکر ذات open source نمیشوم و همیشه به اصل آن وفادار هستم ولی وقتی یک محصول به مرحله تولید رسید بنده مانند شرکت مایکروسافت ، مانند شرکت بورلند ، مانند شرکت سان و حتی مانند شرکت ردهت پول آن را میگیرم و نرم افزار خود را عرضه میکنم ).
در ضمن بنده نزدیک به یک ماه بصورت ماموریت در دوبی بودم و با چندین شرکت کامپیوتری در ارتباط بودم و دقیقاً در آنجا دیدم که شرکت معظم red hat حتی یک دفتر 3 در 4 (12 متری) در دوبی ندارد.(متشکر از این همه پشتیبانی) ;)

در مورد زبانهای برنامه نویسی شما توجه نکردید دوست عزیز:
من گفتم که شرکتها و اشخاص بصورت شخصی از مارک dot net در حال استفاده هستند
در ضمن مایکروسافت برای اینکار از خیلی از آنها حق copyright میگیرد :cool:


در مورد استفاده از apache دعوا فقط و فقط بر سر قیمت میباشد و لاغیر

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

در مورد اینکه مایکروسافت هرچند سال یکبار خطی مشی را عوض میکند(در مورد استفاده از API) ای کاش اینحرف را شرکتی میزد حداقل تو یک review از سیستم عاملش یک زبان برنامه نویسی را عوض نمیکرد :rolleye:


در مورد اسپاگتی کد:
این کد python در وب:




برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

برای یکبار هم شده به محیط asp.net نگاه بیاندازید خواهید دید که مانند یک زبان برنامه نویسی desktop کدهای html با کدهای برنامه شما قاطی نشده در واقع شما Pure asp.net مینویسید و نه html + asp.net
و متاسفم که اصلاً درباره اسپاگتی کد به شما اطلاعات دادم چرا که شما اصلاً اصول اولیه برنامه نویسی را نمیدانید.

Bayazee
09-05-2006, 12:33
سلام دوست عزیز
من فکر می کنم بحث ما فایده ای نداره . بهتر بی خیال شیم و حداقل از انرژی خودمون جای دیگه ای استفاده کنیم !!
با تشکر از بحث شیرین و محکمت !! راستش بخوای یه جورایی لذت بردم و از آشناییت خوشحال شدم . ولی اینو بگم پایه بحث علمی هستم ها ....
اگه می شه یه اطلاعاتی در مورد ماشین مجازی دات نت و مزایاش می خوام . مرسی

netspc
09-05-2006, 14:40
سلام خوشحال ميشم
در مورد پايه برنامه نويسي كه در آخر گفتم يه خورده تند روي كردم ازت معذرت ميخوام
در مورد clr هم حتماً اطلاعاتی برات میذارم.
ولی الان در حال ترجمه و تالیف یک کتاب هستم و هفته دیگه عازم هندوستان.شاید یخورده طول بکشه

Bayazee
09-05-2006, 15:07
سلام دوست عزيز بابا اينا چه حرفي . راستش بخواي از حرفات خيلي استفاده كردم و تازه مي خوام خيلي چيزا ازت ياد بگيرم . تازه باهم دوست شديم ... ممنون مي شم ومرسي
راستي كتابت در چه موردي هست ؟؟
و يه سئوال ديگه نوشتن كتاب به سختي هاش مي ارزه يا نه ؟؟ (از نظر مادي )

netspc
09-05-2006, 20:10
كتاب در مورد مهندسي معكوس هست (كركينگ)
نميدونم ؟؟؟ دفعه اولم هست :)
ولي بيشتر برا دل خودم اينكار رو كردم اگر نشد چاپش كنم روي نت ميذارمش ;)

Bayazee
09-05-2006, 21:41
سلام
اي ول . آقا به ما هم بدي بخونيم ها . منم يه زماني خواستم يه همچين كاري بكنم . نظرات منفي زياد بود گفتن ارزششو نداره . الكي وقط طلف كردن . ولي شما حتما ادامه بديد اميدوارم كه موفق بشيد