Skip to main content

C# and Git Branch Naming Convention

C# Coding Convention
====================
1. General Naming Convention
-> If more than one word is combined then you can follow either of below conventions.
- Pascal Case: Capitalize first letter of each words. For eg: StudentService, FirstName, CapitalCityOfNepal, etc.
- camel Case: first word is all lowe case and Rest follow pascal case. For eg: studentService, firstName, capitalCityOfNepal, etc.

-> This is valid for all the naming i.e. variable, field, property, method, class, etc.
-> If More than two letters acronym or abbreviation then follow pascal case otherwise make all capitals.
-> For eg:
i) PI constant
const float PI = 3.145f; -> Acronym PI is exactly two letters acronym so, all letters is capitals.

ii) API controller -> This should be 'StudentApiController' as API is more than 2 letters i.e. 3 letters acronym so, Pascal Case.

2. Naming Of Class
i) Pascal Case
ii) Service Name
-> Create Separate folder called 'Services'.
-> Append Service Name with the 'Service' Keyword.
-> For eg: Creating Service for Student. Then, name of Service should be 'StudentService.cs'.
iii) Api Controller Name
-> Create Separate folder called 'ApiController' or 'Api'.
-> Append Api Controller name with 'ApiController' keyword.
-> For eg: Creating Api Controller for Student. Then, name of Api Controller should be 'StudentApiController.cs'.
iv) Controller Name
-> Create Separate folder called 'Controller'.
-> Append Controller name with 'Controller' keyword.
-> For eg: Creating Controller for Student. Then, name of Controller should be 'StudentController.cs'.
v) Provider Name
-> Create Separate folder called 'Provider'.
-> Append Provider name with 'Provider' keyword.
-> For eg: Creating Provider for Student. Then, name of Provider should be 'StudentProvider.cs'.

3) Naming of Method
-> Pascal Case
-> It should be prepended by Verbs.
-> Should be meaningful and short. Exceptionally, can be longer too.
-> Commonly used are Get, Display, Delete, Update, etc.
-> For eg: GetStudent(), DeleteStudent(), etc.


4) Naming of Property
-> Pascal Case
-> It should be noun or name or depends on the type of property.
-> Should be meaningful and short. Exceptionally, can be longer too.
-> For eg:
public string FirstName { get; set; }, public string Email { get; set; } etc.


5) Naming Of Fields
i) Inside Class
-> It should be prepended with the underscore '_'.
-> Should be meaningful and short. Exceptionally, can be longer too.
-> For eg:
private readonly StudentService _studentService = null;
private const float PI = 3.14f;

ii) Inside Method
-> Camel Case
-> Should be meaningful and short. Exceptionally, can be longer too.
-> For eg:
float temp = 0f;

6) Naming of variables/ arguments/ parameters
-> Camel Case

==============================
Gitlab/Github Uses
==============================
1. Feature Branch
-> Should be for all the new features coming to the project.
-> For eg: Report feature is requested by clients for the Student Attendance. Then name should be 'feature/StudentAttendanceReport' or 'feature/student_attendance_report'.

2. BugFix Branch
-> Should be for all the issues comming to existing features of the project.
-> For eg: Report Bug is requested by clients for the Student Attendance. Then name should be 'bugfix/StudentAttendanceReport' or 'bugfix/student_attendance_report'.

Comments

Popular posts from this blog

All the require docs of job seekers (java docs, testing docs, study materials, genuine consultancy link)

# JUST_FOR  JAVA LOVERS : CORE & ADVANCED JAVA Notes ! Core Java and Advanced Java Notes! . Link 1 :-  https://www.dropbox.com/s/t…/1--%20Core%20Java%28TOC%29.pdf… Link 2 :-  https://www.dropbox.com/s/0ahi8r…/9--%20Advanced%20Java.pdf… _________________________________ 1.  https://drive.google.com/…/0BxJrew1xg5ZLZjdabnVUUkswalk/view 2. https://drive.google.com/…/0BxJrew1xg5ZLVHVSQ0tiU1VmVXM/view 3. https://drive.google.com/…/0BxJrew1xg5ZLdS1JUTAxMWtTcEU/view 4. https://drive.google.com/…/0BxJrew1xg5ZLY1M5bGp2Ym5lZUk/view 5. https://drive.google.com/…/0BxJrew1xg5ZLck13Rndpd1ZlcEU/view 6.  https://drive.google.com/…/0BxJrew1xg5ZLb2xodlhOTEVzLTA/view --------------------- Spring --------------------- https://drive.google.com/…/0BxJrew1xg5ZLQ3VaQnlja3N1Mkk/view https://drive.google.com/…/0BxJrew1xg5ZLTXNVLUdOR0xmTzQ/view https://drive.google.com/…/0BxJrew1xg5ZLWU9PUmVKUUYtMjQ/view ---------------------- Hibernate ---------------------...

Use your mobile phone as web cam to your pc/laptop

 Brief  This thing started when I had an interview😮 with one of the company in Nepal and my laptop camera quality was so bad that I was asked to turn off 😥 it which made me to think to buy a webcam for my laptop and I realized if the webcam be attached to my laptop using USB cable or WIFI then why we cannot use my phone. This is how it started. I have tested it and using this app called iVCam since then it worked very well as well with teams, zoom and other streaming app as well. We need to download these 2 stuffs only: The mobile app. The PC client software. Install these two software on your individual mobile and pc and then you are good to go.Mobile phone will ask for the permissions, and allow all the permission it ask for. There are two by which we can connect your mobile phone as web cam and they are:  A) WIFI: Connect your laptop and mobile to the same wifi network. Open app in both mobile and laptop/pc. It will automatically connect to the mobile camera....

Buying my buddy - Laptop

 Brief  I am planning to buy a new laptop and I am putting everything here which I come across while looking for best laptop which fits my requirements. My Requirements  Programming: .NET, Angular, SQL, Visual Studio, SQL Server Video Editing Country where I live is Nepal Able to use at least for 5 years Considering the above requirements, I will going with the Dell laptop though in Nepal Acer is quite famous and I will highlight why choose Dell over other laptop.  Before Buying, let's understand the terminology RAM SSD Nits Cooling Graphics Thunderbolt USB WIFI Screen SRGB Laptop meeting my requirements Below configuration will do my job smoothly for at least 5 years and they are: 16GB RAM DDR5 SSD Laptops Meeting My Requirments are: https://www.flipkart.Lenovo IdeaPad Pro 5com/lenovo-ideapad-pro-5-intel-core-ultra-9-185h-32-gb-1-tb-ssd-windows-11-home-14imh9-thin-light-laptop/p/itm1f4865cbfe7ea?pid=COMGZN7RRHARKTDE&lid=LSTCOMGZN7RRHARKTDE4G0GAP&marketplace=...