مایکروسافت، بزرگترین شرکت کننده در GitHub، این پلتفرم را به مبلغ 7.5 میلیارد دلار در سال 2018 خریداری کرد. GitHub که از طریق یک مدل تجاری نرم افزاری به عنوان سرویس (SaaS) ارائه میشود، در سال 2008 راه اندازی شد. همچنین به عنوان یک پلتفرم پیشرو برای پروژههای مشترک نرم افزاری مشترک شناخته میشود که توانسته میلیونها کاربر را به خود جذب کند. گیت هاب به عنوان یک سایت شبکه سازی هم فعالیت میکند که برنامه نویسان میتوانند در آن به شبکه سازی بپردازند و با سایر افراد همکاری کرده تا بتوانند کارهای خود را معرفی کنند. در ادامه مقاله همراه ما باشید تا مفهوم گیت هاب و ویژگیهای آن اشنا شوید.
گیت هاب چیست؟
GitHub بزرگترین وب سایت برای میزبانی پروژههای برنامه نویسان محسوب میشود و این پلتفرم هم به صورت رایگان برای پروژههای عمومی و هم به صورت پولی برای پروژههای تجاری قابل استفاده است. گیت هاب یک وب سایت و سرویس مبتنی بر فضای ابری است که به برنامه نویسان کمک میکند تا کدهای خود را مدیریت کنند و همچنین تغییرات کد خود را ردیابی و کنترل نمایند.
هدف اصلی گیت هاب چیست؟
هدف اصلی GitHub ایجاد محیطی برای کنترل ورژن و کار تیمی روی پروژه هاست. کنترل ورژن در گیتهاب توسط گیت انجام میشود. در واقع گیت در گیتهاب سیستم کنترل ورژن (version control) است. همچنین واژهی هاب به مفاهیم شبکه اشاره دارد که همکاری تیمی و ایجاد انشعاب در پروژهها را معرفی میکند. رابط GitHub کاربر پسند است و حتی کدنویسان مبتدی نیز میتوانند از مزایای آن استفاده کنند. بدون GitHub، استفاده از Git به طور کلی نیاز به دانش فنی و استفاده از command line دارد.
اصطلاحات کاربردی در GitHub
1. Repository
2. fork
3. Pull Request
4. Commit
Repository یا به اختصار Repo به معنای مخزن است. مخزن GitHub محیطی برای ذخیره سازی پروژههای برنامه نویسان میباشد. در این مخزن میتوان هر فولدر یا فایلی را با فرمت دلخواه ایجاد کرد.
fork در فارسی به معنای شاخه یا انشعاب است. با این قابلیت شما میتوانید روی پروژههای open source موجود در GitHub کار کنید. اگر پروژهای از قبل وجود داشته باشد، میتوانید از آن یک انشعاب دریافت و تغییراتی را روی آن انجام دهید. سپس آن را به عنوان یک پروژه جدید منتشر کنید.
Pull Request یا درخواست ادغام قلب تپندهی مشارکت در پروژه هاست. از این ادامه مطلب...
جهت کسب اطلاعات بیشر با شرکت رهاکو در ارتباط باشید. شماره تماس 02154521 و یا به ادرس اینترنتی rahaco.net مراجعه نمایید.
ارزیابی آسیب پذیری فرآیندی است که برای شناسایی نقصهای امنیتی در یک بازه زمانی معین استفاده میشود. این فرآیند ممکن است شامل تکنیکهای خودکار و دستی با درجات مختلف دقت باشد. با استفاده از یک رویکرد مبتنی بر ریسک، ارزیابی آسیب پذیری ممکن است لایههای مختلفی از فناوری را هدف قرار دهد که رایجترین آنها ارزیابیهای لایه میزبان، شبکه و برنامه کاربردی است.
ارزیابی آسیب پذیری چیست؟
ارزیابی آسیبپذیری به روند شناسایی خطرات و اسیبپذیری ها در شبکههای رایانهای، سیستمها، سخت افزارها، برنامهها و سایر قسمتهای یک اکوسیستم فناوری اطلاعات اشاره دارد. این فرایند اطلاعات لازم برای تیمهای امنیتی و سایر ذینفعان را برای تجزیه و تحلیل و الویت بندی خطرات مربوطه به اصلاح احتمالی در شرایط مناسب فراهم میکند. ارزیابی آسیب پذیری شامل استفاده از ابزارهای خودکار مانند: Nessus و Burp Suite (به منظور یافتن اسیب پذیریها) میباشد. که نتایج را در قالب یک گزارش خودکار ارائه می دهد. تست آسیبپذیری به سازمانها کمک میکند تا آسیبپذیریها را در نرمافزار و زیرساختهای پشتیبان خود شناسایی کنند. اما آسیب پذیری نرم افزار دقیقا چیست؟
آسیب پذیری را میتوان به دو صورت تعریف کرد:
اشکال در کد یا نقص در طراحی نرم افزار که میتواند برای ایجاد آسیب مورد سوء استفاده قرار گیرد. این سوء استفاده ممکن است از طریق یک مهاجم احراز هویت شده یا تایید نشده رخ دهد.
مورد دیگر مربوط می شود به شکاف در رویههای امنیتی یا ضعف در کنترلهای داخلی که در صورت بهره برداری منجر به نقض امنیت میشود.
ارزیابی آسیب پذیری چگونه کار میکند؟
تست آسیب پذیری میتواند اشکال مختلفی داشته باشد. یکی از این روشها، تست امنیت برنامههای پویا (DAST) است. DAST (تست پویای امنیت نرم افزار) به طور خاص برای شناسایی نقصهای امنیتی با ارائه ورودیها یا سایر شرایط خرابی برای یافتن عیوب در زمان واقعی انجام میشود. برعکس، تست امنیت برنامه استاتیک (SAST) تجزیه و تحلیل کد منبع یا کد برنامه به منظور شناسایی آسیبپذیریها بدون اجرای برنامه است. رویکرد این دو روش بسیار متفاوت است. آنها در مراحل مختلف چرخه عمر توسعه نرم افزار (SDLC) موثر هستند و انواع مختلفی از آسیب پذیریها را پیدا میکنند. برای مثال: SAST آسیبپذیریهای حیاتی مانند: اسکریپت بین سایتی (XSS) و تزریق SQL را زودتر در SDLC شناسایی میکند. از سوی دیگر ادامه مطلب...
به احتمال زیاد اسم نانوساختارهای مختلفی از جمله نانولولههای کربنی، نانوذرات و نانو کامپوزیت به گوشتان خورده است. یکی از نانو ساختارهایی که امروزه مطالعات و تحقیقات بسیاری در رابطه با آن انجام می شود نانوسیم میباشد. سیم به ساختاری گفته میشود که در جهت طولی گسترش و در دو جهت دیگر محدود شده باشد. این ساختارها دارای دو خروجی میباشند و یکی از ویژگیهای اصلی آنها رسانایی الکتریکی است. به دلیل اختلاف پتانسیل الکتریکی در دو انتهای این ساختار انتقال بار الکتریکی اتفاق میافتد. در ادامه این مقاله با نانوسیمها بیشتر آشنا میشوید.
تعریف نانوسیم
نانوسیمها در یک بستر مسطح از مواد نیمه هادی مانند سیلیکون و ژرمانیوم ساخته شدهاند. این سیمها بسیار ریز هستند و از فلزاتی مانند نقره، طلا یا آهن تشکیل شدهاند. اندازه گیری ناوسیم توسط نانومتر انجام میشود که بیشتر برای ساخت ماشینهای نانو از آن استفاده میشود. ذرات نانو با قطری به اندازه نانومتر نانوسیم ها را تولید میکنند.
انواع نانوسیم
نانوسیمهای فلزی: این نانوساختارها به دلیل خواص ویژهای که دارند در تولید قطعات الکترونیکی کارایی زیادی دارند. توسعه الکترونیک و پیشرفت در این زمینه کوچک شدن قطعات الکترونیکی را به دنبال دارد. اما قوانین مکانیک کوانتوم و هزینههای تولید کوچکتر کردن قطعات را بسیار محدود خواهد کرد.
نانوسیمهای آلی: این نوع از نانو سیمها همانطور که از نامشان پیداست از ترکیبات آلی به دست میآیند. علاوه بر مواد فلزی و نیمه رسانا، ساخت نانوسیمها از مواد آلی نیز امکان پذیر است. برای این منظور از مادهای بنام «الیگوفنیلین وینیلین» استفاده میشود. ویژگیهای مختلف این سیمها مانند رسانایی و هدایت حرارت به ساختار مونومر و طرز آرایش آنها بستگی دارد.
نانوسیمهای هادی و نیمه هادی: ساختار شیمیایی این ترکیبات باعث به وجود آمدن خواص بسیار جالبی میشود.
نانوسیمهای سیلیکونی: این نوع از سیمها به سلولها آسیبی نمیرسانند و بیشترین کاربرد را در عرصه پزشکی مانند تشخیص سرطان، رشد سلولهای بنیادی و غیره ارائه میدهند.
از مهمترین نوع نانوسیمها میتوان به سیمهایی از جنس سیلیسیوم، ژرمانیوم، بور، قلع، سرب، ایندیوم، بیسموت، سلنیوم، تلوریم، طلا، نقره، آهن، کبالت، نیکل، مس، روی، کادمیم و کبالت اشاره نمود. این نانوسیمها از روشهای مختلفی تهیه میشوند که از میان آنها میتوان به تبخیر فیزیکی فلز و رسوب شیمیایی بخار (Chemical Vapor deposition) اشاره کرد.
کاربردهای نانوسیم در تکنولوژی
از این فناوری در ساخت تراشه کامپیوترها مانند سیلیکون و نیترید گالیون و همچنین تشخیص بیماریها استفاده میشود. دانشمندان به تازگی موفق شدند نانوسیمهای انعطاف پذیر و ادامه مطلب...