آقا شما همش گفتی LINQ و دات نت و ال و بل با اطمینان میگی تو این عالم تکنولوژی چیزای جدید که زرت و زورت ظاهر میشن و آدم نمیدونه کی وقت پیدا می کنه این همه چیزو یاد بگیره حالا یکسری بیکار پیدا بشن با API که مال 20 سال پیشه (اوه ه ه ) برنامه بنویسن
حالا بزار یجور دیگه به قضیه نگاه کنیم، API یعنی چی اصلا یه سری رابط یا تابع یا هر چی برای اینکه یه برنامه نویس بتونه با محصول یک شرکت مورد نظر کار کنه، اون شرکت ماکروسافت مثلا باشه، اون محصول هم سیستم عامل ویندوز، این یعنی چی یعنی برای ارتباط با ویندوز ما هیچ راهی بجز استفاده از API نداریم چون همیجوری اجازه نداریم مثلا به حافظه دسترسی داشته باشیم، فایل ها رو دستکاری کنیم، به شبکه وصل بشیم، حتی یه پنجره ساده ترسیم کنیم
یه سوال پیش میاد، پس اگه اینجوریه همه کتابخانه ها هم هر کاری بخوان بکنن باید حتما از API استفاده کنن؟
درسته همینطوره کلا یکسری آدم بیکار توی دنیا داریم اینا مسلطن به API و شرکت های مختلف اینارو استخدام میکنن که در نهایت کتابخانه هایی مثل Qt ، MFC, .NET, GDK و ... تولید بشن و در نهایت این شرکت ها به اینا برای این همین کار پول میدن که اون برنامه نویسای بدبخت بتونن برن خوش بگزرونن
ولی مساله مهم اینه که افرادی که از یه کتابخانه مثل همینا که گفتیم استفاده میکنن ممکنه تو یه پروژه به مشکلی بر بخورن یه مشکلی که اون کتابخانه امکانی برای حلش نداشته باشه یا اگر داره خیلی ناقصه، حتی بدتر از تو اینترنت plugin برای اون کتابخانه نیست که بشه ازش استفاده کرد
خوب این وسط اونی که فقط اون کتابخانه رو بلده چی کار میتونه بکنه؟ خوب دو تا کار می تونه انجام بده 1 - تو سره خودش بزنه و اون امکان رو بی خیال بشه 2 - از یکی که وارد تره سوال کنه تا اون براش یه plugin بسازه
اونی که کمی API ها رو بشناسه و بدونه اون کارو با چه API هایی میشه انجام داد چی کار میتونه بکنه؟ سادس برای اون کتابخانه یه plugin می نویسه
حالا این همه داستان گفتیم دیگه بیخیال میشم ولی شما جناب Mehran NZ که می گی برای DirectX لازم نیست API بلد بود تا حالا یه سورس ساده DirectX رو باز کردی ببینی تو چی هست؟ یا حتی در مورد OpenGL ؟
شما متاسفاته اینقدر با ابزار آلات سطح بالا سروکله زدی اصلا خبر نداری اینا خودشون چطوری کار می کنن، سورس بعضی از برنامه های open source که برای ویندوزه و مثلا با زبان ++C هست یه بار باز کنید ببینید، بعد بیاین هر چی خواستین بگین.
در ضمن در آخر بگم من دشمنی با هیچ کدوم از تکنولوژی ها مثل Net. و امثالهم ندارم در آینده اگه وقتشو داشته باشم حتما سمت اینا میرم، مساله تفکرات عجیب غریبی هست که بعضیا دارن، به هر حال
موفق باشید