生物信息学在高中教学中的应用

时间:2022-05-19 12:38:52

生物信息学在高中教学中的应用

摘 要:高中阶段的生物教材中,仅把生物信息学作为科普知识向学生做简要介绍。为了加强学生对它的直观认识,通过和学生共同探讨思考,利用现有的简陋条件,指导学生设计了相关的程序,取得了良好的教学和思想教育效果。

关键词:生物信息学;高中教学;编程

高中教材必修二的《基因的表达》这一章节中就介绍了有关生物信息学的概念和一些应用的实例。在这个内容的学习过程中,学生表达出强烈的兴趣。特别是当笔者提到需要编写程序时,学生感觉特别高深,但又表达出强烈的学习兴趣,愿意学习这个内容。经过和学生们再三思考讨论后,笔者发现Excel软件具备一些这样的功能。这个软件学生在通用技术上学习过,并且它自带了一款入门时简单易学的编程软件VB,所以这就为实验的开展打下了基础,我们所要做的就是将生物语言转化成计算机语言。

1.内容确定

我们选择高中教材必修二的《基因的表达》这部分知识,因为它和信息学更容易衔接。最后确定用于编程的生物学相关内容:(1)判断某序列是否为DNA序列;(2)将DNA序列转化成RNA序列;(3)将RNA序列翻译成蛋白质序列。

2.程序编写和调试

2.1软件选择

Excel2003版本。先将版本安全性调低,有利于宏的运行。方法:选择工具―宏―安全性(调低)。再打开Excel自带的程序编辑器,方法:选择工具―宏―VB编辑器。

2.2程序的编写

2.2.1判断某序列是否为DNA序列

设计思路:生物学原理是,如果序列中的字母不是A、T、C、G,则这个序列不是DNA序列。

2.2.1将DNA序列转化成RNA序列

设计思路:生物学原理是碱基互补配对原则,程序语言实现―字母的转换A-U,U-A,G-C,C-G。

2.2.3将RNA序列翻译成蛋白质序列

设计思路:生物学基础是蛋白质的密码子表。如果有AUG序列则翻译开始,如果出现UAA、UAG、UGA序列,则翻译终止。其他情况则根据密码子表逐一翻译。

最终通过一系列的编写调试,这三个程序编写成功。具体程序见附录1。并且举例验证其不光能够运行,同时也符合生物学原理,验证过程见附录2。

3.实验总结

学生参与这个实验后,对学科之间的交叉有了直观、深刻的认识,并切实提高了对学习的浓厚兴趣。他们在总结讨论表示:原本以为Excel已经很精通了,不曾想到这么简单的东西还可以用来做这么深奥的学问,由此带来的震撼和体会特别巨大。他们深刻地感到,知识不再是为了应付考试而存在的抽象空洞概念,而是可以切切实实用于解决问题的工具。同时,由此带来的学生课堂学习态度的变化非常明显,教师们明显感觉到学生上课过程中眼中带着对知识的渴求。

笔者对这个实验带来的这些意外惊喜效果也感触颇深。教育是一门艺术而不是技术,它完成的质量的高低,取决于教师付出多少努力和心血。切实地去思考去做去完善自己的教育理念,一定会比单纯地说教更能取得良好的效果。

[附录1]

1.判断某序列是否为DNA序列

Private Function TX(DNA)

Dim a, i As Integer;Dim B, c As String

a = Len(DNA);B = UCase(DNA)

For i = 1 To a

If Mid(B, i, 1) =“A”Or Mid(B, i, 1) = “T” Or Mid(B, i, 1) = “C” Or Mid(B, i, 1) =“G”Then

Else:Exit For

End If

Next i

If i = a + 1 Then

c =“是基因序列”

Else:c =“不是基因序列”

End If

TX = c

End Function

2.将DNA序列转化成RNA序列

Private Function Trc(DNA)

Dim a, i As Integer;Dim B As String

a = Len(DNA);B = UCase(DNA)

For i = 1 To a

If Mid(B, i, 1) =“A”Then

Mid(B, i, 1) =“U”

ElseIf Mid(B, i, 1) =“T”Then

Mid(B, i, 1) =“A”

ElseIf Mid(B, i, 1) =“C”Then

Mid(B, i, 1) =“G”

ElseIf Mid(B, i, 1) =“G”Then

Mid(B, i, 1) = “C”

End If

Next i

Trc=B

End Function

3.将RNA序列翻译成蛋白质序列

Private Function Trs(RNA)

Dim a(64), B(64) As String;Dim d, e, f, i, j, k, l As Integer;Dim P, Q, R As String

a(1) = “UUU”:B(1) = “-F-”;

a(2) = “UUC”: B(2) = “-F-”;

a(3) = “UUC”:B(3) = “-L-”;

a(4) = “UUC”:B(4) = “-L-”;

a(5) = “CUU”:B(5) = “-L-”;

a(6) = “CUC”:B(6) = “-L-”;

a(7) = “CUA”:B(7) = “-L-”;

a(8) = “CUG”:B(8) = “-L-”;

a(9) = “AUU”:B(9) = “-I-”;

a(10) = “AUC”:B(10) = “-I-”;

a(11) = “AUA”:B(11) = “-I-”;

a(12) = “AUG”:B(12) = “-M-”;

a(13) = “GUU”:B(13) = “-V-”;

a(14) = “GUC”:B(14) = “-V-”;

a(15) = “GUA”:B(15) = “-V-”;

a(16) = “GUG”:B(16) = “-V-”;

a(17) = “UCU”:B(17) = “-S-”

a(18) = “UCC”:B(18) = “-S-”

a(19) = “UCA”:B(19) = “-S-”

a(20) = “UCG”:B(20) = “-S-”

a(21) = “CCU”:B(21) = “-P-”

a(22) = “CCC”:B(22) = “-P-”

a(23) = “CCA”:B(23) = “-P-”

a(24) = “CCG”:B(24) = “-P-”

a(25) = “ACC”:B(25) = “-T-”

a(26) = “ACA”:B(26) = “-T-”

a(27) = “ACG”:B(27) = “-T-”

a(28) = “ACU”:B(28) = “-T-”

a(29) = “GCU”:B(29) = “-A-”

a(30) = “GCC”:B(30) = “-A-”

a(31) = “GCA”:B(31) = “-A-”

a(32) = “GCG”:B(32) = “-A-”

d = Len(RNA):P = UCase(RNA)

For i = 1 To d

Q = Mid(P, i, 3)

If Q =“AUG”Then

l = l + 1

ElseIf (Q =“UGA”Or Q =“UAG”Or Q =“UAA”) And l 0 Then

Exit For

End If

If l 0 Then

For j = 1 To 64

If a(j) = Q Then

R = R & B(j):i = i + 2

End If

Next j

End If

Next i

If l = 0 Then R =“无起始密码子”

Trs = R

End Function

[附录2]

1.打开Excel 2003选择工具―宏―安全性(调低)

2在左侧工程-VB Project窗口空白处右击―插入模块

3.将附录一中的程序复制粘贴于此处

4.测试过程

(1)判断某序列是否为DNA序列

Excel的单元格A1中输入的是DNA序列;A2单元格输入的不是DNA序列

在C1单元格中输入=tx(a1);C2表格中输入=tx(a1)

(注:TX是我们编写的宏程序代码)

测试结果成功,能够判断其是否为DNA序列,如果是则输出“是基因序列”,否则输出“不是基因序列”。

(2)将DNA序列转化成RNA序列

如果经过1步骤测试是DNA序列,我们可以将它翻译成RNA序列

A1单元格中输入DNA序列,我们在E1单元格输入=trc(a1)

结果E1单元格返回代码值是转录后的序列,并且测试结果符合我们生物学原理

(3)将RNA序列翻译成蛋白质序列。

A1单元格中我们输入的是有起始密码子和终止密码子的RNA序列

A2单元格中我们输入的RNA序列没有起始密码子

在A4单元格中输入=trs(a1);在A5中输入=trs(a2)

测试结果成功,并生物学原理:A4中输出的是序列翻译后的结果,A5则输出“不存在起始密码子”。

参考文献:

林卓然.VB语言程序设计[M].电子工业出版社,2009-01.

作者简介:沈亮余,男,1986年12月,理学硕士,就职于四川省大竹中学,研究方向:高中生物教学。

上一篇:关于高三历史二轮复习中的问题与思考 下一篇:复习课,也能出彩