【Python】在进行Web应用开发时,从未接触HTML到掌握关键要点,选择以下六项【Django】
首先
我花了大约一个月的时间学习Django。我认为无论做什么事情,最初的一个月都非常重要,所以我现在先写下我在这个阶段所想到的东西。
由于我之前几乎没有接触过JavaScript,甚至连HTML/CSS都几乎没有接触过,所以在学习的过程中经常会遇到不顺利的情况。
因此,在此次使用Django进行Web应用开发的过程中,作为没有HTML经验的我所想到的,有关需要牢记的6件事将会被介绍。
本文摘要
-
- HTML未経験でDjangoはできるのか
-
- Djangoの難易度は
- 勉強法とおすすめの参考書について
這個方向適合這樣的人。
-
- Djangoを始めようと思っている人
-
- Pythonで何かしてみたい人
- フロントエンドに興味のある人
Django 是什么?
Django(吉克)是使用Python实现的Web应用程序框架。
使用Django,您可以使用较少的代码轻松地创建高质量的Web应用程序,包括内容管理系统、维基百科、社交网络和新闻网站等。
Django现在是非常受欢迎的网络应用开发框架。据说知名的网站YouTube和Instagram都是使用Django构建的。
我学习前的情况
-
- Pythonの基礎的なコードは理解している
-
- Django未経験
-
- HTML/CSS,JavaScriptも未経験
- もちろんフロントエンドには縁なし
应该牢记的六项要点
我开始学习Django才一个月,但是我很享受并且能够持续学习下去,我也想推荐给那些没有HTML/CSS等知识的人。不过,我认为在熟悉之前会遇到很多挫折点,因为这不是一个简单的框架。
下面我将介绍六个你应该牢记的要点。
1. 失败的点很多,不容易。
2. 如果学习了HTML,某种程度上就能理解。
3. 即使不擅长CSS和JavaScript,也可以勉强有所成就。
4. 需要对Python的字典、函数、类等有一定的理解。
5. 最开始肯定应该从参考书开始。
6. 在学习中,ChatGPT的好处非常大。
1. 过程中会遇到很多挫折点,很不容易。
在学习Django的过程中,我多次有此感觉。特别是,如果尝试独自学习,肯定会遇到困难。
作为使Django变得困难的因素之一,需要考虑文件类型的繁多。例如,我在学习开始的3周内创建的家庭预算应用程序的目录结构如下(请流览)
.
├── accounts
│ ├── __init__.py
│ ├── __pycache__
│ ├── adapter.py
│ ├── admin.py
│ ├── apps.py
│ ├── forms.py
│ ├── migrations
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── config
│ ├── __init__.py
│ ├── __pycache__
│ ├── asgi.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── db.sqlite3
├── kake
│ ├── __init__.py
│ ├── __pycache__
│ ├── admin.py
│ ├── apps.py
│ ├── consts.py
│ ├── fixtures
│ │ └── kake
│ ├── forms.py
│ ├── migrations
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── manage.py
├── static
├── templates
└── venv
尽管有很多类似的文件,但仅仅是主要的py文件就有这么多。而且文件夹中还有每个页面的html文件,所以要处理的文件数量相当多。
我认为实际上在其中,最初可能存在一些不需要特别注意的文件,这可能会导致相当混乱。
还有其他的挫折点,比如对MTV的理解。
MTV是取自Model、Template、View的首字母,简单来说,它类似于Django的基本组成要素。
请将理解的人把它看作是Web应用程序框架中常被提到的MVC(模型、视图、控制器)的Django版本。
在使用Django进行Web应用程序开发时,主要涉及处理与MTV(模型-模板-视图)相对应的代码,并且理解这些关系将对顺利进行开发起到关键作用。以下文章可供参考,详细介绍了MTV的内容。
使用参考书籍来学习可以大大提高在Django上的舒适度,尽管有许多困难点。
关于参考书籍,我将在第五个位置进行介绍。
如果你学习HTML的话,就能在一定程度上理解它。
HTML是一种用于编写网页的标记语言。根据HTML的规则编写的文本文件称为HTML文档,通过浏览器加载它们可以显示网页。HTML的官方名称为“超文本标记语言”,意思是用于标记超文本的语言。
关于HTML,坦率地说,我认为即使不专门学习也可以应对。当然,如果深入研究可能需要编写更复杂的代码,但基本上,HTML只是放置文字的地方而已。
在这里,我们可以看到被{% %}包围的代码。这是特定于Django的代码,可以在html文件中使用熟悉的语法,如for循环和if语句。
在HTML文件中,有一个称为”标签”的东西,用于指定在页面中加入哪些元素,实际上我们需要经常使用它,但我认为只有在需要的时候查找一次就足够了。
即使对CSS和JavaScript不太熟悉,也能勉强让其成形。
CSS的全称是Cascading Style Sheets(层叠样式表)。
通过使用CSS,您不仅可以更改在HTML中编写的文本的颜色并整理布局,还可以更改鼠标悬停时的背景色等内容。此外,还可以适用于音频设备和点字设备,并实现在HTML中无法实现的功能。
JavaScript(JavaScript)是一种编程语言,与HyperText Markup Language(HTML)和Cascading Style Sheets(CSS)并列,是World Wide Web(WWW)的核心技术之一。
HTML文件只是放置文字,而CSS和JavaScript的作用是为其添加内容。如果它们不能正常工作,网站就会变得很糟糕。
然而,就个人而言,我认为先把像CSS这样的学习放在后面是可以的。这是因为 CSS 和 JavaScript 也有一些知名的 Web 框架,比如 Bootstrap 和 Semantic UI。
Bootstrap是一个用于构建网站和Web应用程序的前端Web应用程序框架。它提供了排版、表单、按钮、导航栏等构建要素以及用于JavaScript的扩展,作为基于HTML和CSS的设计模板。
换句话说,使用这些工具可以轻松地美化HTML文件的外观,而无需编写CSS文件。
然而,如果企业或其他机构实际上要开发和运营Web应用程序的话,就需要确保CSS的编写工作得到充分了解,因此建议即使没有相关基础知识,也最好有能够自如地创建Web应用程序的能力。
如果使用Bootstrap,您只需在html文件的class中输入与“要素上想要实现的操作”相对应的单词,就可以轻松地调整页面。
如果将以下代码填写到类中,对于“hello world”文本,它的意思是在水平方向上添加四个填充,向左边添加三个边距,并将其宽度设置为15。
<div class="px-4 ml-3 col-15">
hello world
</div>
请随便设想一个可以轻松指定配置的地方。
此外,您还可以轻松地创建元素本身。
用Bootstrap,你几乎可以只使用HTML文件来完成整个项目。
毫无疑问,可以同时使用自定义的CSS文件,这样就可以在享受Bootstrap模板的同时,按照个人的喜好进行定制。
作为一个例子,我用Bootstrap以及一些基本的CSS和JavaScript(比如颜色的定制)编写的家庭账单应用网站如下所示。
顺便提一下,这个饼图是由matplotlib(在Python常用的图形库)创建并转化为图像显示的,同时具备Python的特点(当然,如果费用发生变化,饼图也会相应改变)。
Django提供了事先准备好的材料,可以用来创建下述的登录功能,非常方便。
4. 学习Python需要对字典、函数、类等有一定的理解。
在Django中,字典、函数、类的继承、覆盖等概念经常出现,学习Django必须掌握这些概念。
特别是对于一个类来说,我们经常会使用Django预先准备好的类(例如,ListView这个类可以轻松创建处理列表的页面),通过继承来使用。
如果你已经熟悉Python,那么应该没有特别的问题。但对于那些没有太多接触过Python的人来说,可能会稍微麻烦一些。
我认为这是 Python 中一种熟悉的功能,与其他语言相比,学习难度较低。因此,我认为现在是一个学习它的好机会。
最开始的时候,毫无疑问应该从参考书开始。
如前所述,Django涉及的文件很多,往往会遇到许多挫折点。为了避免挫折,我认为最可靠的方法是使用一本能够从环境设置到各个文件解释等方面进行全面说明的参考书。
当然,参加课程等是不错的选择,但我认为参考书在性价比和时间上更有优势。
我将介绍我在学习时所用的两本参考书。
1. 《Django精髓与技巧完全指南》[第2版]
在这本参考书中,我们将以创建书架应用程序为目标,逐步添加功能来进行Web应用程序开发。
一个好处就是有使用参考书设定目标。不知道自己想要达到什么目标会导致学习动力下降,因此我建议那些想要从参考书开始学习的人设定一个目标。
说到持续开发的话,这本书作为参考书而言,实际上很普通。在完成这本书后继续学习的过程中,有几次我觉得那些代码好像可以用不同的方式来写。
虽然如此,我觉得这可能是出于重视初学者易懂性的结果,每个文件都有说明和明确的Django学习要点的掌握,对我来说已经足够满意了。
2. Django实用手册《基础篇》[3.2 LTS兼容版]可用于现场应用。
这本参考书没有设定目标,所以单独学习Django似乎很困难。
这本书的形象就像标题所说的那样,像教科书一样详细解释了Django本身以及其构成要素,如视图和模型。
这本书最吸引人的地方就是它按照标题所描述的那样注重实践,每一章都以“最佳实践”的形式介绍了一些在实践中做得更好的方法,这些介绍非常有用,给予了我很多参考。
我认为,与最初介绍的参考书相比,这本书的优点在于它可以长期使用,而不会因为达到目标而降低需求。
尽管没有很多,但关于Django的参考书还是有的,所以请务必尝试使用适合您口味的参考书。
另外,我认为一旦熟悉了基本内容,可以考虑进行除了参考书以外的其他学习。
目前我正在使用以下的网站。
6. 在学习中,ChatGPT给予了很大的帮助。
作为Django的缺点,常常被提到的是缺乏日语教材(反之,除此之外几乎没有其他弱点了吗?)。这也被列为挫折点之一。
因为我刚开始学习一个月,所以没有必要痴迷于阅读英语文章,但我现在有一种模糊的感觉,未来可能会需要。
此外,尽管这适用于所有语言,但理解错误信息确实需要付出很大的精力,当遇到第一次接触的框架时,更容易感到厌倦,因为你可能会想:“又是这个错误”。
然而,令人惊讶的是,在现代竟然出现了ChatGPT先生。
如果将错误消息投入到这个ChatGPT中,它至少可以流利地解释和提供我在学习初期困扰的简单错误的解释和解决方案。
此外,您还可以将编写所需功能的代码甚至网站创意等都交给ChatGPT。
嗯,如果这样的话,就要谈论为什么要学习编程。
总结一下
如果你没有HTML的经验,但想要进行Web应用开发,以下是需要注意的六个要点。如果有错误,请务必告知我。