Django是一个开放源代码的Web应用框架,由Python写成。

采用了MVC的框架模式,即模型M,视图V和控制器C。

它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的(百度百科)。

写在前面:

作为新手,你要知道的是,Python语言的开发环境,是所有后端语言开发环境中最为简单的。。。

一、python 解释器

当我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。

为了进一步梳理回顾,在深入认识解释器之前,我们要先了解一下两大编程语言——解释型语言、编译型语言。

解释型语言:

不需要编译,通过解释器,过程中逐行读懂代码交给计算机执行。

优点:良好的兼容性,灵活修改代码,快速部署,不用停机维护。

缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。

代表语言:Python JavaScript 等。

编译型语言:

通过编译器将源代码编译成机器码,一次性打包成可执行文件,放到可运行的环境中。

优点:程序执行效率高。可以脱离语言环境独立运行。

缺点:不同的操作系统之间移植会有问题,需要根据运行的操作系统环境编译不同的可执行文件。

代表语言:C C++等。

二、Pycharm

Pycharm,是我们在Django框架下的Web开发中,使用最多的一款IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。

IDE:Integrated Development Environment ,称为集成开发环境。是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套。

因而能够大大提升我们的开发效率,同时,IDE一般由以下三个部分组成。

解释器/编译器

简单讲,编译器就是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。

编辑器

主要进行代码的编写。

调试环境

或者称之为DeBugger(调试器),作为软件维护与错误修正的一个最重要、最直接,也是必不可少的一种机制。

基于CPU的异常,并由操作系统的异常分发\事件分发的子系统(或模块)负责将其封装处理后,以比较友好的方式与调试器进行实时交互。

三、虚拟机

通过软件模拟的、具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。

常见的虚拟机软件有:VMware(VMWare ACE)、Virtual Box和Virtual PC等。

1.作用

便于隔离出一个纯净的环境进行开发。

比如,A项目要用Python2开发,而B项目要用到Python3开发,然而同时在一个系统中开发难免出现冲突,因此可以通过建立一个虚拟系统,内外分别安装Python2 、3来分别开发。

2.端口映射

首先,端口是什么?这里也可称为网络端口,计算机系统共有65535个网络端口。

我们知道,一台拥有IP地址的主机可以提供许多服务,这些服务完全可以通过1个IP地址来实现。那么,主机是怎样区分不同的网络服务呢?

实际上是通过“IP地址+端口号”来区分不同的服务的。

比如图中所示,QQ在客户端与服务端是怎样连接的呢?显然,它们需要同一个端口号来对应才能连接。

还有常见的周知端口:80端口对应www   22端口对应ssh等等。

前面我们说到,物理机与虚拟机平时是完全隔离的,但要连接时怎么办呢?这是需要用到端口映射。

比如,利用本地的XShell通过ssh协议连接虚拟机,物理机中安装的XShell所对应端口为‘1234’,而虚拟机中ssh服务对应端口为‘22’,通过1234端口与22端口进行映射关联,即可完成本地与虚拟系统的连接。

同理,本地的Navicate数据库管理工具,要与虚拟机中的MySQL数据库连接,首先通过本地3306端口连接,再与对应的MySQL数据库的3306端口(虚拟机)进行映射关联,即可完成连接。

四、隔离的Python运行环境

在使用Django框架进行web开发的过程中,我们经常要使用到虚拟环境,但为什么要使用它呢?

比如项目一要使用django1.11版本的,而项目二要使用django2.0版本的,为了避免冲突,可以通过建立多个虚拟环境的方式,来分别安装不同版本的django进行开发。

常见的2种工具:virtualenv、virtualenvwrapper。

这里以virtualenv在Ubuntu终端进行示例操作:

1.查看当前有哪些虚拟环境:workon

2.创建虚拟环境:mkvirtualenv -p /usr/bin/python3.6 <虚拟环境名称>

3.退出虚拟环境:deactivate

五、远程操作

完成了上述步骤后,我们还需要对Pycharm远程配置解释器及代码同步。

依次选择File,New project ,Existing interpreter。

点击右侧齿轮处,选择Add Remote。

再依次选择ssh服务,并填入本地主机IP,对应端口,用户名,密码等。

设置远程解释器同步代码的文件夹。

至此,完成环境搭建前的相关准备工作。

初识Django框架——环境搭建前你需要了解的几点的更多相关文章

  1. 3/16 Django框架 环境搭建

    3/16 Django框架 环境搭建 环境搭建 Python解释器 Python代码通过Python解释器去执行. 编程语言 机器语言---汇编语言(助记符)---高级语言 解释型语言:解释器将代码一 ...

  2. 联盟链初识以及Fabric环境搭建流程

    这篇文章首先简单介绍了联盟链是什么,再详细的介绍了Fabric环境搭建的整个流程. 区块链分类: 以参与方式分类,区块链可以分为:公有链.联盟链和私有链. 定义: 我们知道区块链就是一个分布式的,去中 ...

  3. django开发环境搭建(参考流程)

    django开发环境搭建(参考流程) 2013-08-08 01:09:06 分类: LINUX 原文地址:django开发环境搭建(参考流程) 作者:bailiangcn 对于一个初学者,在实际的开 ...

  4. eclipse中SSH三大框架环境搭建<三>

    相关链接: eclipse中SSH三大框架环境搭建<一> eclipse中SSH三大框架环境搭建<二> 引言:通过上两篇文章我们已经可以掌握struts2和spring的环境的 ...

  5. eclipse中SSH三大框架环境搭建<二>

    通过上一篇博客我们可以轻松搭建strtus2的环境,接下来由我来继续介绍spring的环境搭建以及spring注入的简单使用 相关链接:eclipse中SSH三大k框架环境搭建<一> ec ...

  6. eclipse中SSH三大框架环境搭建<一>

    这里先简单介绍一下我用的三大框架版本以及下载地址 相关链接:eclipse中SSH三大框架环境搭建<二> eclipse中SSH三大框架环境搭建<三> struts-2.3.3 ...

  7. 基于Maven的Springboot+Mybatis+Druid+Swagger2+mybatis-generator框架环境搭建

    基于Maven的Springboot+Mybatis+Druid+Swagger2+mybatis-generator框架环境搭建 前言 最近做回后台开发,重新抓起以前学过的SSM(Spring+Sp ...

  8. SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)

    1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下 ...

  9. Go语言及Beego框架环境搭建

    在开始环境搭建之前,我们先一起来看看: Go有什么优势: 不用虚拟机,它可直接编译成机器码,除了glibc外没有其他外部依赖,部署十分方便,就是扔一个文件就完成了. 天生支持并发,可以充分的利用多核, ...

随机推荐

  1. Element UI的Table用法

    Table 表格 用于展示多条结构类似的数据,可对数据进行排序.筛选.对比或其他自定义操作. ¶基础表格 基 2016-05-02 王小虎 上海市普陀区金沙江路 1518 弄 2016-05-04 王 ...

  2. perl模块

    查看perl模块安装目录:find `perl -e ‘print “@INC”‘` -name ‘*.pm’ -print 为什么要写或要模块呢?简言之:代码重用,更多见于写一组工具集,有很多地方是 ...

  3. HDU 4889 Scary Path Finding Algorithm

    其实这个题是抄的题解啦…… 题解给了一个图,按照那个图模拟一遍大概就能理解了. 题意: 有一段程序,给你一个C值(程序中某常量),让你构造一组数据,使程序输出"doge" 那段代码 ...

  4. 二 JDK + mysql + yum + rpm

    如果系统环境崩溃.   调用/usr/bin/vim /etc/profile   1  网络搭建 2  host配置 3  SSH无密码登录   4  rpm 安装     yum install ...

  5. 【Cocos2d-x 3.0】游戏开发之win32配置环境搭建project

    作者:Senlern 转载请注明,原文链接:http://blog.csdn.net/zhang429350061/article/details/37958275 非常久没有写教程了.如今认为还是要 ...

  6. SQL函数_Floor和Celling

    1 floor()函数用于获得小于或者等于数值表达式的最大整数,也就是向下取整;celling()函数用于获得大于或者等于数值表达式的最小整数,也就是向上取整: 2 floor()函数和round函数 ...

  7. linux下支持托盘的邮件客户端Sylpheed

    在网上搜索了很多客户端想支持系统托盘,发现一个很不错的邮件客户端Sylpheed.设置方式和foxmail很像,最为重要的是支持系统托盘,很方便,默认没有开启,简单设置下:配置->通用首选项-& ...

  8. 搭建专属于自己的Leanote云笔记本

    搭建专属于自己的Leanote云笔记本 Leanote 依赖 MongoDB 作为数据存储,下面开始安装 MongoDB: 下载 MongoDB 进入 /home 目录,并下载 MongoDB: cd ...

  9. 判断控件的CGRect是否重合,获取控件的最大XY值

    判断给定的点是否被一个CGRect包含: BOOL contains = CGRectContainsPoint(CGRect rect, CGPoint point); 判断一个CGRect是否和另 ...

  10. 学习——HTML5

    HTML5多用于手机页面制作,因为PC版浏览器大多不兼容,可以通过下面网站查看HTML5浏览器兼容情况: http://www.caniuse.com/#index 一.语义化标签 1.<hea ...