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 ---------------------...

npm install on windows 7 python2 not found error and node-sass@3.13.1 error #317

Before I write all, I'd like to say that before the update everything worked well; while updating node from version 7.2.1 to version 9.4.0 and npm from version 5.5.1 to version 5.6.0 in Windows 7 (64-bit) using the installer (https://nodejs.org/en/download/) and installing globally gulp-cli version 2.0.0, as far as npm install starts from the JointsWP folder I get the following error: $ npm install npm WARN deprecated babel-preset-es2015@6.24.1: รฐ  Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update! npm WARN deprecated gulp-util@3.0.8: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5 npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue > uws@0.14.5 install C:\Users\Bob\Dropbox\Development\vhosts\mongoose-project\vanilla\themes\JointsWP\node_modules\uws > node-gyp rebuild > build_log.txt 2>...

Useful video links with Questions and Answers(.NET, SQL/Database, Azure, DSA, Docker, GIT, AI)

A) AI What is artificial intelligence (AI)? B) .NET SOLID Principles In C# With Examples Design Patterns In C# .NET (2023)   Design Patterns   Software Architecture And Patterns Shiva Kumar - .NET (Youtube)   Multithreading and multitasking Multithreading and asynchronous programming and parallel programming in C# (Youtube)   C) SQL/Database SQL Query Interview Questions - SQL Server Database (Youtube)   ACID Properties Of Transaction In DBMS (Youtube) D) Azure   Modules in this learning path - MSDN Susanth Sutheesh (Youtube)   E) DSA   Strivers A2Z DSA Course/Sheet F) Docker   Docker - Everything You Need To Know G) GIT   Start with Git & GitHub in Visual Studio Misc https://www.youtube.com/watch?v=aaUInV445BY Salary Negotiation - 10 tips on how to negotiate a Higher Salary