افزودن یک پسوند جدید در netbeans

بدون مقدمه

Netbeans هر روز در حال گسترش و روند صعودی خودش رو طی میکنه و پلاگین های  زیادی براش نوشته میشه اما گاهی تکنولوژی از پلاگین نویس ها جلو میزنه، خب مثال فایل های jade اگر باهاش کار کرده باشین پلاگین داره اخیرا نصب این پلاگین یه پیام میده پروژه با نام pug داره توسعه داده میشه پس حالا باید پسوند های .jade به .pug تغییر کنه حالا دوتا مشکل بوجود میاد برای توسعه دهنده یکی syntax highlighter موجود رو پسوند pug کار نمیکنه و فایل نمونه توی project inspector  نیست که بشه از روش نمونه سازی کرد پس میریم برای حل این مشکلات با این مثال عرض شده:

 

افزودن فایل جدید با پسوند pug  و کارایی jade:

اطلاعات بیشتر

devdoc.io

سرزمین داکیومنت های برنامه نویسان – DevDocs.io

امروز میخوایم یکی از دشواری هایی (دوشواری ؟ دوشواری نداریم اینجا !) که همیشه برنامه نویسان باهاشون درگیرن رو حل کنیم.

خب شروع میکنین به طراحی و برنامه نویسی مثلا یک وب سایت. یه سوال Php پیش میاد … میریم به  http://php.net/manual یا نهایتا به ورژن آفلاینش سر میزنیم. سوال در مورد یه attributeدر html پیش میاد…جاوا اسکریپت و به همین منوال و اصلا هرچی که هست! چی میشد همه این اسناد و راهنمایی ها یه جا بودن و به روز هم میشدن خودشون؟ خب اگه تو مرورگر هم بودن که بهتر. اصلا افزونه هم بود واسه ادیتورها مثله sublime text و … که چه بهتر. اصلا میشد آفلاین هم استفادش کرد… بیخیال بریم سر اصل مطلب 😉

راه حل  http://devdocs.io هست… با تمام ویژگی های بالا که گفتیم.

devdoc.io

devdoc.io

devdocs به تعریف خودش انواع مختلف داکیومنت ها رو به صورت بسیار سریع – مرتب و قابل جستجو در اختیارتون میزاره. یکی از بهترین ویژگی ها هم قابلیت آفلاین هست که هر تعداد اسناد در زمینه های مختلف بخواین براتون دانلود میکنه و آفلاین در اختیارتون قرار میده. در ضمن منبع باز هم هست. به سایتش برین و لذت ببرین 😉

معرفی kloxo یا lxadmin – کولکسو – نحوه نصب نسخه جدید Kloxo-MR

kloxo-mr

مقدمه

kloxo به نظر من یکی از کم دغدغه ترین و کم هزینه ترین سامانه های کنترل وبسرور هستش، لذا هم اوپن سورس هستش و هم در نهایت بسیار منابع کمتری مصرف میکند و همه چیز تموم هستش و کم و کسری نداره همه چیز رو حتی در اندازه های cpanel هستش ولی خب تجاری نیست که به قدرت اون برسه، ولی در اصل خودش از بهترین هاس، وقتی نام kloxo یا lxadmin به میون میادش یاد خاطره تلخ خودکشی مدیر توسعه پروژه اش به خاطر اون باگ های کذاییش زنده میشه، خیلی دردناک بود خودکشی این انسان شایسته ولی خوب تعهدش رو نسبت به سیستمش نشون میداد پس وقتی داریم از کلسکو یاد میکنیم این عقبه متعهد رو به خاطر اطلاعات بیشتر

مقایسه C# با Delphi – برتری ها – مزایا و معایب

مقدمه

همیشه یکی از بحث های مطرح بین برنامه نویس برتری زبان های برنامه نویسی هستش، اصلالتاُ این بحث زمانی سر چشمه میگیره که، برنامه نویس ها تنها یک زبان رو برای توسعه خودشون انتخاب کنند، من به شخصه هیچ عرقی به یک زبان برنامه نویسی خاص ندارم و هر کسی از من این سوال رو میپرسه ( معمولا تو هفته یکی دو مرتبه پیش میادش) با چه زبانی برنامه نویسی رو استارت بزنم پاسخ من با یه سوال شروع میشه چشم انداز تو برای برنامه نویس یا توسعه دهنده شدن چی هستش؟ اما ما باید یه چیزی رو در نظر بگیریم اونم اینه که هر زبانی یه سری رویکرد داره که برای انتخاب باید به رویکرد ها و قابلیت ها توجه کرد که‌ آیا رویکرد این زبان برنامه نویسی با رویکرد های من سازگار هست یا خیر! پس این نقد و مقایسه رو به دور از تعصب توضیح میدیم لذا خیلی موقع ها من به بعضی ها خودم #C رو پیشنهاد میدم به برخی دیگه دلفی رو، پس میزان رویکرد شماس.

 

delphic

 

توضیحی در مورد آندرس هلزبرگ

Anders Hejlsberg معمار اصلی دلفی می باشد، که طراح بنیان دلفی به عهده ایشان بوده است و یکی از طرح های کم نظیر ایشان VCL در دلفی می باشد ، به صورت خلاصه وار بخواهیم در مورد دادگاهی بین مایکروسافت و برلند ( بنیان گذار دلفی اما الان هیچ امتیازی ندارد در اختیار embarcadero می باشد) یک جلسه پشت درب های بسته انجام میشود Borland از شکایت خود منصرف میشود و در نهایت آندرس هلزبرگ از برلند به مایکروسافت می رود همچنان جای سوال است که برنلد در این معماله در ازای چه چیزی مغز متفکر خود را تقدیم مایکروسافت کرد و در نهایت پس از ورود به مایکروسافت J# را طراحی میکند که با شکست مواجه میشود و بعد از معمار اصلی C# ایشان میباشند پس این شخص یکی از مهم تریناطلاعات بیشتر

97 نکته که باید هر برنامه نویس بداند- بخش دوم – پارسی – ترجمه

نکته 4

.Automate Your Coding Standard

4- گوینده : Filip van Laenen به طور خودکار برنامه خورد را استاندارد کد بزنید .
بدون شک شما کد های زیادی تا کنون زده اید .  در ابتدای پروژه همه معمولا نیت های خوبی دارند در “پذیریش قرارداد” ها اغلب این قرارداد ها در اسناد به صورت نوشته شده است .یکی از اصول این است که در آخر کد های پروژه شما استاندارد باشد.  در طول جلسه سعی بر این است که همه اسناد به بهترین و نحو و مطابق با میل همه تنظیم شود ، اما زمانی که پروژه به جریان میافتد خیلی از این نیات خوب فراموش میشود  ، در آن واحد ، اما زمان تحویل که میرسید کد مثل آش شعله قلم کار شده و هیچ کس نمیداند که چگونه و از چه راهی به این شکل در آمده است.
چه زمانی همه چیز رو به خطا نهاد؟ احتمالا در همان پایان نشست .به برخی از قسمت های پروژه توجه نکرده اید ، دیگران متوجه این نکته نیستند، اما بدتر این است که شما در پی برنامه ریزی یک کد استاندارد بودید اما اختلال در کد ایجاد میشود ،  در نهایت برخی از نقاط را با آنها کنار می آیید ، اما زمانی فشار پروژه بیش از حد بالا میرود ، آنها مجبور میشوند کارهای بکنند ، زمانی که کد پروژه فرمت بندی میشود مشتری از شما کد با قابلیت بیشتری می خواهد. بنابراین رعایت کردن یک کد استاندارد به طور خودکار در پروژه خسته کننده میشود. فقط سعی کنید در غرق شدن در کلاس آشفته پروژه ، خود در آن پیدا کنید.

wallpaper-3ac52
اما اگر مشکل این چنین است ، چرا می خواهیم کد های استانداردی در اطلاعات بیشتر

قرار گرفتن اسکرول در جای قبلی بعد از postback

با سلام گاها پیش میاد نیاز هست بعد از postback شدن یک فورم برای سهولت ادامه عملیات اسکرول به مکان قبلی خود برگرده برای این کار پلاگینها و کدهای جی کوئری مختلفی وجود داره اما کد زیر با استفاده از جاوا اسکریپت هست و نیازی به لود جی کوئری و چیزهای دیگه نداره بیسار سبک هست براحتی میتونین ازش استفاده کنید

 

این کد قابلیت ذخیره اسکرول رو به شیی ویندوز در جاوا اسکریپت اضافه میکنه

طریقه استفاده:

 

به روزرسانی هسته اوبونتو – update Ubuntu kernel

به نام  دانای بر حق

مقدمه

گاه شما نیاز میبینین که کرنل سیستم عامل خودتون رو آپدیت کنین، از اونجایی که لینوکس مثل ویندوز، شما رو یک انسان نادان فرض نکرده به شما این اجازه رو میده خودتون کرنل سیستم عامل خودتون رو آپدیت کنین پس سیستم عامل Ubuntu برای نمونه نحوه آپدیت کردن کرنل به ورژن دلخواهتون رو در موردش صحبت میکنیم تا باشد که رستگار شوید.

 

Linux_kernel_ubiquity.svg

پیدا کردن packge ها کرنل

شما به مراجعه به این صفحه :

میتونین تمامی ورژن هایی kernel ای که برای اوبنتو کامپایل شده رو دانلود آپدیت کنین و اولین و مهم ترین اصل این هستش که اگر سیستم عامل شما 32bit باشد حتما باید package های که با .i386 ختم میشوند را دانلود کنید در غیر این صورت اگر 64bit بودید باید پکیج هایی که به .amd64 ختم میشوند را دانلود کنید اگر هم از سیستم های دیگه مثل پردازنده arm استفاده میکنید به سراغ پکیج مورد نظر خودتون برید.

حال کدام پیکج ها را نصب کنم؟

ابتدا ورژن مورد نظر خود را انتخاب کنید، معمولا شما دو header و یک image نیاز دارید اما header ای را که پیشوند ندارد و در آخر آن اطلاعات بیشتر

kill process بستن یک برنامه در دلفی

به نام دانای بر حق

 

یکی از چیزهایی که قبلا تو xmen برای این حقیر جذاب بودش این بودش که برای هر کاری یه sample وجود داشتش. استاد مبین همیشه پیشتاز این عرصه بودش با اقتدا به ایشان. البته انتشار این مثال ها جنبه عملی و چیز جدیدی نداره ها فقط مثال هستش بودنشون خالی از لطف نیست.

kill process  با استفاده از نام فایل:

استفاده از unit مشخص شده Winapi.TlHelp32 ضرورت داره:

تابع مورد نظر :

 

نحوه استفاده:اطلاعات بیشتر

پیش نمایش عکس در html توسط jquery

با سلام

شاید شما هم دوست داشته باشید بعد از انتخاب یک عکس توسط کاربر و قبل از اپلود یک پیش نمایش از عکس انتخاب شده به کاربر نشون بدید

راحترین راه استفاده از کدهای جی کوئری هست

 

 

 

 

مثال:

 

97 نکته که باید هر برنامه نویس بداند- بخش اول – پارسی – ترجمه ، مقدمه

مقدمه

97 نکته که هر برنامه نویس باید بداند، کتابی که تو سال ۹۰ بودش با یکی از دوستام امید تصمیم گرفتیم بخونیم، یادمه همون موقع ها بودش که من یه سری از این نکته ها رو شروع کردم ترجمه کردن همین جوری از رو دل این کار رو کردم. اون روزی فایلش رو دیدم دلم نیومد تو بایگانیم خاک بخوره منتشرش میکنم تو هر بخش 3 نکته و انشاالله اگر وقت کنم بخش های و نکات دیگر این کتاب رو ترجمه میکنم.

یکی از مهم ترین نکته های این کتاب اینه برنامه نویساش هم فری لنسر بودن و هم شرکتی کار نکته های جالبی از دو زوایه میگند که خوندنش خالی از لطف نیست.

 

587777

 

نکته شماره ۱

Act with Prudence
1-گوینده : seb rose  : زمانی که کاری را انجام می دهید با احتیاط انجا دهید و به عواقب آن بیاندیشید .

مهم نیست یک برنامه نوشته شدنش چقدر ساده به نظر برسد ، در ابتدای کار ، شما نمیتوانید جلوی فشار های زمانی که پیش می آید رو بگیرید. اگر زمانی خودتون رو در وضعیتی یافتید که مجبور بودید به این بودید که بین ” انجام درست ” و یا ” انجام سریع ” یک پروژه یکی را انتخاب کنید ، مطمئا انجام سریع جاذبه بیشتری دارد اما این رو در نظر بگیرید که انجام سریع یک بازگشت برای تعمیر را به همراه دارد زمانی که شما به خود و یا تیم و یا مشتری خود چینین اجازه ای را میدهید، اما در تمام پروژه ها که به شما پیشنهاد میشه ، در آینده مشکل جدید برای شما بوجود میاورد و این مسائله را برجسته میکند؛ این کار معوق شناخته شده بدهی فنی نام دارد و برای شما اصلااطلاعات بیشتر

نصب لازاروس روی centos

به نام دانای بر حق

مقدمه

خیلی گشتم دنبال روش نصب برای لازاروس روی centos ولی هیچ جا به هیچ زبونی پیدا نکردم واسه همین خودم دست به کار شدم و حالا اینجا فقط به زبان شرین پارسی میذاریم تا هم به عنوان یه رد پا برای قدم های بعدی خودم باشه و هم اگر شما لازم داشتین اذیت نشین

نسخه لازاروس : 1.6

نسخه فری پاسکال: 3.0.0

Lazarus_Logo_(new)

لازاروس چیست؟

به نقل از ویکی پدیا: لازاروس (به انگلیسی: Lazarus) یک محیط توسعه مجتمع (IDE) برای توسعه سریع نرم‌افزارها (RAD) است که از کامپایلر FPC استفاده کرده و تا درجه‌های مختلفی هم از گویش‌های آبجکت پاسکال پشتیبانی می‌کند. از این برنامه می‌توان برای توسعه دادن برنامه‌های کنسولی و برنامه‌های دارای واسط گرافیکی کاربر برای رایانه‌های رومیزی، دستگاه‌های موبایل، سرویس‌های وب، کتابخانه‌ها و … استفاده کرد. لازاروس از چند سکوی مختلف از جملهاطلاعات بیشتر

گذشتن از بعضی موانع مثل نظر سنجی دانشگاه با inject jquery

مقدمه

امروز تو خونه بودم ساعت ۱۲ شب بود یکی دوستام زنگ زد گفت کارت آزمون منو پرینت میگیری من ازت بگیرم گفتم باشه اطلاعات ورود رو بده تا من ردیفش کنم. از اونجایی که خیلی وقته از قضیه دانشگاه ها خبر ندارم وقتی وارد سایت دانشگاه شدم متوجه شدم که برای دریافت کارت آزمون باید 8 تا فرم نظر سنجی که دارای ۲۵ تا فیلد بود رو پر کنم. حالا باید چی کار می کردم!!!!؟؟ گفتیم این موضوع رو بهانه ای برای یه یادداشت جدید بکنم.

 

استفاده از کنسول مرورگر

کنسول یا console مرورگر که به اشتباه اکثر فعالین عرصه وب فک می کنند فقط جایی برای لاگ انداختن هستش باید عرض کنم اینطور نیست شما میتونین از کنسول برای تزریق و اجرای کد های خودتون بهرمند شوید. یعنی چی ؟

اطلاعات بیشتر

آنالیز ساختار ویندوز و روت کیت های سطح هسته-بخش پایانی

اگر کمی با برنامه نویسی کرنل آشنایی داشته باشید، حتما ساختار DRIVER_OBJECT را به خوبی می شناسید. این ساختار دارای فیلدی به نام MajorFunction است که آرایه ای از نوع PDRIVER_DISPATCH که آدرس روتین های مدیریت IRP دریافتی را در خود نگهداری می کند. IRP ها در wdm.h تعریف گردیده اند، نمیخواهیم وارد مبحث برنامه نویسی سطح کرنل شویم پس بیشتر وارد جزییات نمی شویم. اگر بتوانیم به ساختار DRIVER_OBJECT یک درایور دسترسی پیدا کنیم می توانیم عمل هوک را برای IRP های دریافتی آن انجام دهیم و IRP های آن درایور را مشاهده نماییم. ساده ترین راه برای دسترسی به این ساختار استفاده از تابع IoGetDeviceObjectPointer() است. این تابع آدرس Device Object را به عنوان خروجی بر میگرداند و درواقع Driver Object فیلدی از Device Object است.ساختار Device_Object ها را در تصویر زیر میبینیم:

Device_Object

همانگونه که مشاهده می کنیم فیلد NextDevice به دیوایس بعدی اشاره می کند وقتی درایورها به هم متصل شده اند و یک chain تشکیل دهند می توان مقادیر آن را مشاهده نماییم.  هر DeviceObject دارای DriverObject خودش می باشد که در فیلد DriverObject مشخص گردیده است. برای مشاهده درایورها می توانیم از کامند !object \device\ استفاده نماییم که لیستی از کل آبجکت ها را نشان می دهد. سپس برای نمایش استک از کامند  !devstackمی توانیم استفاده نماییم.

اطلاعات بیشتر

آنالیز ساختار ویندوز و روت کیت های سطح هسته-بخش سوم

در ادامه بحث های مطرح شده در آنالیز ساختار ویندوز و روت کیت های سطح هسته-بخش اول  و همچنین آنالیز ساختار ویندوز و روت کیت های سطح هسته-بخش دوم ادامه بحث را دنبال خواهیم کرد.

یکی دیگر از تکنیک های که روت کیت ها استفاده می نمایند درواقع می توان گفت نسل جدیدتر روت کیت ها، استفاده از تکنیک DKOM[1] نام دارد. در این تکنیک ساختار های کرنل را تغییر میدهیم . ساختارهایی مانند لیست پروسه های فعال ، درایورها.

در این روش هیچگونه هوک و یا تغییری در جداولی مانند SSDT,IDT انجام نمیدهیم. روت کیت ها می توانند با Unlink نمودن یک شی EPROCESS از ActiveProcesLinks خود را پنهان نمایند و پروسه ای را از دید تابع ZwQuerySystemInformation() که برای بدست آوردن لیست پروسه های اجراشده در سیستم استفاده می نماییم پنهان نماید. کرنل از ساختاری به نام KPCR[2] استفاده می کند. در این ساختار اطلاعات مهم و اساسی مانند IDT ، GDT و … ذخیره می شود. برای دسترسی راحتتر به KPCR کرنل آدرس آن را در نسخه های x86 ویندوز درون رجیستر fs و همچنین در ویندوزهای x64 در رجیستر gs ذخیره می کند. KPCR شامل ساختاری است به نام KPRCB[3] است. KPCR مستند شده است ولی KPRCB یک ساختار خصوصی است و تنها در ntoskrnl مورد استفاده قرار می گیرد. این ساختار شامل اطلاعات درباره Scheduling پروسه ها می باشد.

Kernel processor control region

در ساختار _KPRCB فیلدی به نا م CurrentThread وجود دارد که برایمان مهم می باشد همانطور در تصویر زیر می بینیم این فیلد از نوع ساختار _KTHREAD است:

kernel processor control block

برای مشاهده محتوای ساختارهای KPCR و KPRCB می توانیم از دستور های !pcr و !prcb استفاده نماییم، مقدار Current  را به یاد داشته باشید.

pcr-command-windbgاطلاعات بیشتر

آنالیز ساختار ویندوز و روت کیت های سطح هسته-بخش دوم

در ادامه بحث های مطرح شده در آنالیز ساختار ویندوز و روت کیت های سطح هسته-بخش اول  ادامه بحث را دنبال خواهیم کرد.

سطح هسته همانند سطح کاربر دارای هوک های خاص خودش است که معروفترین آن ایجاد تغییرات دلخواه در جداولی است که آدرس توابع مورد نیاز سیستم را در خود نگهداری می کنند:

  • System Service Dispatch Table (SSDT)
  • Interrupt Descriptor Table (IDT)

آدرس توابع سطح کرنل درون جدول SSDT نگهداری می شود(توابع nt*). هنگامیکه روند اجرا یک برنامه سطح کاربر میخواهد به سمت کرنل هدایت شود  ID مرتبط با تابع کرنل درون رجیستر EAX قرار می گیرد و رجیستر EDX به لیست پارامترهای که بایستی به تابع ارجاع داده می شود اشاره می کند، سپس با اجرای دستور int 2e و یا sysenter روند اجرا پروسه به سطح کرنل خواهد رفت.  هنگامیکه وقفه ای رخ می دهد سیستم عامل با جستجو در IDT ، روتین مرتبط با مدیریت آن وقفه را بدست میاورد. این جدول تمامی وقفه ها را درون خود نگهداری می کند. روتین هندل کننده وقفه 0x2e  تابع KiSystemService() از ntoskrnl است. برای بازگشت به سطح کاربر از دستور iret استفاده می شود. در صورتی که از دستور sysenter استفاده شود برای بازگشت به سطح کاربر از دستور sysexit استفاده خواهد شد. برای پشتیبانی از دستور sysenter ویندوز در زمان بوت آدرس روتین مرتبط را بجای IDT در رجیستر  MSR[1]  ذخیره می کند. . اسکریپت زیر را می توانید از این آدرس[2] دریافت نمایید. با دستور زیر در windbg میبینیم که handler این وقفه تابع  KiSystemService() است :

اطلاعات بیشتر

آنالیز ساختار ویندوز و روت کیت های سطح هسته-بخش اول

در این پست و چند پست آتی به نحوه آنالیز و تحلیل Rootkit ها خواهیم پرداخت که پیش نیاز آن، آشنایی با ساختار و تکنیک های مورد استفاده در آنها می باشد. Rootkit ها مختص به یک سیستم عامل و پلتفرم خاص نیستند، در واقع یک اصطلاح می باشد که به دسته خاصی از بدافزارها اشاره می شود. روت کیت هایی برای MS Windows ، Linux ، Cisco IOS و … نوشته شده و می توان نوشت. مایکروسافت درباره روت کیت چنین می گوید که نویسندگان بدافزارها برای پنهان کردن بدافزار از روت کیت ها استفاده می کنند، حال روت کیت بدافزار است یا بخشی از بدافزار و تعریف و تعابیر دیگر از این واژه ، خود را درگیر این قبیل مباحث نخواهیم کرد.

rootkit

Rootkit را می توان به دو بخش root و kit تقسیم کرد تا بهتر به مفهوم آن آشنا شد. سیستم عامل ویندوز به طورکلی به دو سطح تقسیم می شود یعنی Ring0 و Ring3 (به هر سطح Ring گوییم). Ring0 دارای بالاترین سطح دسترسی می باشد که به آن Kernel-mode نیز گفته می شود و همچنین Ring3 دارای کمترین سطح دسترسی که به آن نیز User-mode گوییم.

هر سطح دارای ساختار و ویژگی خاص خود می باشد بنابراین در مبحث دیباگینگ نیز تفاوت هایی وجود دارد. WinDBG دیباگر مایکروسافتی است که می توان در هر دوسطح عمل دیباگ را انجام دهیم ولی نکته قابل توجه کارایی آن است که در Ring3 دیباگر هایی مانند OllyDBG ، ImmunityDBG و… کارایی بهتری را دارا هستند. با توجه به ویژگی های WinDBG ، در دیباگ سطح هسته از آن استفاده می کنیم. راه های دیباگ در windbg را می توان در تصویر زیر مشاهده نمود:

windbg-debug-ways

 

برای دیباگ کرنل به دو صورت Remote و یا Local می توانیم عمل نماییم. Local Debug در سطح هسته بدین معنی است که خود سیستم مان را دیباگ نماییم که در این حالت دارای محدودیت هایی خواهیم بود و کارهایی مانند: توقف در اجرا، قرار دادن نقاط توقف در روند اجرا و امثالهم را نمی توان انجام داد. برای این حالت علاوه بر WinDBG ممکن است به ابزار LiveKD [1]  نیاز شود. در حالت Remote که در واقع بحث اصلی مان خواهد بود، علاوه بر روش های مختلف موجود که محبوبترین آن Serial است با استفاده از ابزار Virtual KD [2]  نیز میتوانید دیباگ را انجام دهید. روش Serial دارای سرعت پایین تری نسبت به Virtual KD می باشد. در حالت Serial سرعتی که داریم   bps  115200 است ولی در Virtual KD  حداکثر سرعت در Virtual Box نیز 450 KB/s  و برای VMware حداکثر 150 KB/s  است. بعد از نصب و راه اندازی Virtual KD در ماشین مجازی براحتی میتوان با استفاده از WinDBG و یا IDA به آن متصل شد و دیباگینگ را انجام دهیم.

اطلاعات بیشتر

تبدیل عدد به حروف در php

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

مهمترین مزیتش هم سبک و کم حجم بودن اون هست که سرعت بالایی داره

 

 

معرفی pycharm یک IDE مطلوب برای پایتون- دانلود برای لینوکس و mac osx + کرک

مقدمه

JetBrains یک شرکت چند ملتی واقع در جمهوری چک میباشد که تمرکز این شرکت روی تولید نرم افزار هایی جهت محیط مجتمع توسعه یا همون IDE می باشد این شرکت محصولات خوبی دارد ولی غریب با اتفاق تمامی محصولاتش closed سورس و تجاری می باشد لذا شما بایستی حتما لایسنس تهیه کنید یا از نسخه های غیر قانونی استفاده کنید.

pycharm.png__470x290_q95_crop

معرفی اجمالی pycharm

pycharm به نظر من بهترین IDE پایتون هست و مهم ترین ویژگی این IDE ویژگی cross platform یا مستقل از سکو بودنش هستش یعنی روی سکو های ویندوز ، لینوکس و مک قابل اجرا است، و علت اصلی این که اکثر محصولات این شرکت این ویژگی را دارند استفاده از بان برنامه نویسی جاوا میباشد و روی همین حساب یه خرده کندی رو به همراه داره اما به صورت کلی خیلی به نسبت سایر برنامه های جاوا بهینه هستش و واقعا توسعه دهنده از پول که میدهد احساس رضایت می کند و از خصیه های این IDE اینهست که از هر دو ورژن پایتون 3.x و 2.x همزمان پشتیبانی می کند.اطلاعات بیشتر

اجرای پایتون روی ژمپ(xampp)

با سلام

خیلیها دوست دارند در کنار زبان شیرین php دستی هم بر بخش وب python داشته باشن . برای این کار اول python و xampp رو روی سیستم نصب میکنیم بعد فایل httpd.conf رو باز و ویرایش میکنیم.در ابتدا خط

رو جستجو کرده و عبارت py. رو به انتهای اون اضافه میکنیم به صورت زیر

خب حالا نوبت به شناساندن پوشه پایتون هست داخل پوشه htdocs یک پوشه به هر اسمی که مایل هستید مثلا python ایجاد کنید

در ادامه درون فایل httpd.conf مقدار <Directory /> را جستجو کرده و در یک قسمت خالی مقدار زیر را وارد کرده و فایل را ذخیره میکنیم

خب حالا نوبت به نوشتن کدهای پایتون میشود

درون آدرس htdocs/python یک فایل با نامی دلخواه مثلا index.py ایجاد کنید و کدهای زیر را درون آن قرار دهید

مقدار عبارت /Python34/python.exe در خط اول آدرس مفسر پایتون میباشد که بر حسب نسخه پایتون نام پوشه متفاوت است مثلا اگر پایتون نسخه 2.7 روی سیستم شما نصب باشد آدرس به صورت /Python27/python.exe تغییر میکند

 

موفق و پیروز باشید

Shellcode نویسی در لینوکس بخش 3

به نام دانای بر حق

پیرو آموزش های بخش اول و دوم shell code نویسی در لینوکس یه خرده از بحث مبتدی خارج شده و کمی تولید علم در زبان پارسی در این مورد می کنیم نظر به این نکته که شل کد ها معمولا کد ماشین هستند ما کمی از مباحث پایه خارج میشویم و در این مورد بیشتر بحث می کنیم ، البته اگر خسته نشید : )

 

کمی در مورد ساختار سخت افزار ، زبان ماشین و اسمبلی

ابتدا من از سخت افزار و ساختار cpu به طور مختصر و مفید بگم،هم ما فک میکنیم CPU زبون نفهم هست هم CPU بلا نسبت شخص شخیص شما همچین فکری میکنه 😀 به تصویر زیر توجه کنید:

 

chart cpu

خب این رابطه معادله مثل ترازو هست مشخص هستش که هر چی بیشتر زبان برای ما خوش آیند تر میشه برای پردازنده  نا خوشایند میشود و همین نسبت عکسش هم برقرار هستش خب بهترین حالت شلکد نوشته شدن در پایین ترین قسمت تصویر بالا هستش و حالا یه خرده بیشتراطلاعات بیشتر