Node.js
अच्छा कोडिंग स्टाइल
खोज…
टिप्पणियों
मैं एक शुरुआत करने वाले को कोडिंग की इस शैली के साथ शुरुआत करने की सलाह दूंगा। और अगर कोई बेहतर तरीके से सुझाव दे सकता है (पीएस आई ने इस तकनीक को चुना है और मेरे लिए कुशलता से काम कर रहा है, तो 100k उपयोगकर्ताओं द्वारा उपयोग किए जाने वाले ऐप में), किसी भी सुझाव के लिए स्वतंत्र महसूस करें। TIA।
साइनअप के लिए मूल कार्यक्रम
इस उदाहरण के माध्यम से, यह नोड के कोड को बेहतर निष्पादन के लिए विभिन्न मॉड्यूल / फ़ोल्डर में विभाजित करने के लिए समझाया जाएगा। इस तकनीक का अनुसरण करने से अन्य डेवलपर्स के लिए कोड को समझना आसान हो जाता है क्योंकि वह सीधे पूरे कोड के माध्यम से जाने के बजाय संबंधित फ़ाइल को सीधे संदर्भित कर सकता है। प्रमुख उपयोग तब होता है जब आप एक टीम में काम कर रहे होते हैं और एक नया डेवलपर बाद के चरण में जुड़ता है, उसके लिए कोड के साथ स्वयं को जेल करना आसान हो जाएगा।
index.js : - यह फाइल सर्वर कनेक्शन को मैनेज करेगी।
//Import Libraries
var express = require('express'),
session = require('express-session'),
mongoose = require('mongoose'),
request = require('request');
//Import custom modules
var userRoutes = require('./app/routes/userRoutes');
var config = require('./app/config/config');
//Connect to Mongo DB
mongoose.connect(config.getDBString());
//Create a new Express application and Configure it
var app = express();
//Configure Routes
app.use(config.API_PATH, userRoutes());
//Start the server
app.listen(config.PORT);
console.log('Server started at - '+ config.URL+ ":" +config.PORT);
config.js : -यह फाइल विन्यास संबंधी सभी पैरामस को प्रबंधित करेगी जो पूरे समय एक ही रहेगी।
var config = {
VERSION: 1,
BUILD: 1,
URL: 'http://127.0.0.1',
API_PATH : '/api',
PORT : process.env.PORT || 8080,
DB : {
//MongoDB configuration
HOST : 'localhost',
PORT : '27017',
DATABASE : 'db'
},
/*
* Get DB Connection String for connecting to MongoDB database
*/
getDBString : function(){
return 'mongodb://'+ this.DB.HOST +':'+ this.DB.PORT +'/'+ this.DB.DATABASE;
},
/*
* Get the http URL
*/
getHTTPUrl : function(){
return 'http://' + this.URL + ":" + this.PORT;
}
module.exports = config;
user.js : - मॉडल फ़ाइल जहाँ स्कीमा परिभाषित है
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
//Schema for User
var UserSchema = new Schema({
name: {
type: String,
// required: true
},
email: {
type: String
},
password: {
type: String,
//required: true
},
dob: {
type: Date,
//required: true
},
gender: {
type: String, // Male/Female
// required: true
}
});
//Define the model for User
var User;
if(mongoose.models.User)
User = mongoose.model('User');
else
User = mongoose.model('User', UserSchema);
//Export the User Model
module.exports = User;
userController : - इस फाइल में यूजर साइनअप के लिए फंक्शन है
var User = require('../models/user');
var crypto = require('crypto');
//Controller for User
var UserController = {
//Create a User
create: function(req, res){
var repassword = req.body.repassword;
var password = req.body.password;
var userEmail = req.body.email;
//Check if the email address already exists
User.find({"email": userEmail}, function(err, usr){
if(usr.length > 0){
//Email Exists
res.json('Email already exists');
return;
}
else
{
//New Email
//Check for same passwords
if(password != repassword){
res.json('Passwords does not match');
return;
}
//Generate Password hash based on sha1
var shasum = crypto.createHash('sha1');
shasum.update(req.body.password);
var passwordHash = shasum.digest('hex');
//Create User
var user = new User();
user.name = req.body.name;
user.email = req.body.email;
user.password = passwordHash;
user.dob = Date.parse(req.body.dob) || "";
user.gender = req.body.gender;
//Validate the User
user.validate(function(err){
if(err){
res.json(err);
return;
}else{
//Finally save the User
user.save(function(err){
if(err)
{
res.json(err);
return;
}
//Remove Password before sending User details
user.password = undefined;
res.json(user);
return;
});
}
});
}
});
}
}
module.exports = UserController;
userRoutes.js : - यह userController के लिए मार्ग है
var express = require('express');
var UserController = require('../controllers/userController');
//Routes for User
var UserRoutes = function(app)
{
var router = express.Router();
router.route('/users')
.post(UserController.create);
return router;
}
module.exports = UserRoutes;
उपर्युक्त उदाहरण बहुत बड़ा दिखाई दे सकता है लेकिन अगर नोड पर एक शुरुआत। ज्ञान के एक छोटे से मिश्रण के साथ ज्ञान इस के माध्यम से जाने की कोशिश करता है, तो यह आसान और वास्तव में उपयोगी लगेगा।